还剩14页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
课后题习题答案Q
1.6习题
1.C2T#include2main
3.c,obj.exe
2.6习题
1.主主
2.D
3./**/
4.Printf
5.\t错误应该为\n
6.#includestdio.h Intmian{Printf“这是我的第一个C语言程序”;return0;}
3.
10.1输入输出函数IC2A3B4D5A6C
3.
10.2结构化程序设计1#include stdio.h floatmainvoid{float a,b;printf请输入矩形的长和宽:\n;scanf H%f,%f,,a,b;printf该矩形的面积为%f\n*\a*b;return0;2#include stdio.h mainint a,b,c;printfplease inputtwo numberaz b:;scanf”%d,%d”,a,b;c=a;a=b;b=c;printfa=%d,b=%d/a/b;return03return0;
4..lag6l«f MIM•V y|vt ecfcfhaA.fMeMBi ac«cM|•J hMRa«j1•11IMU,*arh0««MiM»4l**«»*«MB I15fercMckm*jcliich«iM«lWiCl*ick««**
45.ii u1213WincludB^tidloJi14RM向15I16tnl Ci7mt fl20bl,1;IS fori»2;i20;itt1910flibfii-2Hfli-lK/!l小•请2I[3f即i*0;K20X141150//i return0*
7.
5.1一维数组的定义和引用
1.C
2.A
3.D
4.B
5.
10225713206.k=2471int i;⑵P二i⑶printf%d\n,p#include stdio.h#include math.h mainint i.data
[20];data[O]=data
[1]=1;fbri=2;i20;i-H-data[i]=data[i-l]+data[i-2];printf44W,;fbri=0;i20;i-+-H{printf4i%7d,.data[i];ifi+l%5==0printf\n;752二维数组的定义和引用
1.C
2.A
3.A
4.B
5.Sum=156lx4⑵y3⑶Z二二3■include stdiah void aainO intLJ;Int a
[6][
51.〃5个学生的学号.3门谡程及平均施演printf请・人5个学生的学号及30谡程的成境:VT./,■入个学生的学¥及3门11程的收债forJ
0.j
4.J**・⑷⑷0//平均值切妁化为皿⑷、皿425;•卬⑷、皿4】/3;foriM.i5J**4播厅5列的格式■出printf*t5daa[i]UD;print fC\u.~L______________________________________
8.sinclude stdiah voidaainO inttv J.Int a
[6][
51.〃5个学生的学号.3门课程及平均就演prfntf请3人5个学生的学号及3门谡程的成绩:VT.ford.13〃■人个学生的学号及3门谀程的收债forj0,j
4.J**ic«nf\d*v i«[i]J];ford^O.iO.i**a[iJU]»O,〃平均值初妁化为0forJ*l,j4,J**皿⑷、H】⑷Yi13;皿⑷WkJ/3;fori«
0.15,i**〃播厅5列的格式■出fortjaO,j
6.J**printfCt6d\e[i][j];printf*\aT.753字符数组l.A2,C
3.C
4.D
5.B
6.C
7.B8,-59,“BBB”10,Happy
8.
12.1函数的调用与声明LB
2.B
3.A
4.A
5.C
6.D
7.B
8.The finalresult is:
49.5,
610.29l.A2,A
3.D
4.B
5.A
6.
97.0,00,
08.
159.410ldouble facint n;⑵facn⑶f
8.
12.3数组作为函数参数一值传递与地址传递
1.C2,B3,B
8.
12.4全局变量和局部变量
1.A
2.max=
88.
12.5变量的存储类型l.C2,D
3.D4,C课后题习题答案
29.
14.1指针概述与定义
1.B
2.BEF3,C
4.A
5.B
6.ABC
9.
14.2指针变量的初始化l.A2,C
3.D4,A
9.
14.3指针变量的引用
1.B2,C
3.A
4.C
5.B
9.
14.4数组与指针
1.C2,C
3.C
4.A5,D61a+i2a+j3a+j
9.
14.5指针与字符串l.C2,A
3.A
4.A
5.C
9.
14.6指针数组
1.B2,C
9.
14.7二维数组与指针
1.C2,A
3.D
4.B
9.
14.8指向函数的指针
1.B2,D
10.
4.1宏定义和调用l.A2,B
3.C4,C
10.
4.2预处理
1.A2,B
3.A4,D
11.
6.1结构体类型和结构体变量l.C
2.B
3.D
11.
6.2结构体数组与指针
1.C2,C
3.C
4.B
5.stdio.h struct student{char name
[20];int idnum;float score
[3];//分别存三科成绩double total;11总分;struct student*highscorestruct student*s,int nint i;struct student*high二s;fori=0;in;i++{s+i-total=s+i-score
[0]+s+i-score[l]+s+i-score
[2];ifhigh-totals+i-total high=s+i;return high;mainstructstudent*s,student
[5];//录入学生信息fors=student;sstudent+5;s++{printf输入第%d个学生的信息\n,s-student+1;printf姓名scanf%s”,s-name;printf学号:;scanf%dz s-idnum;printf语文数学英语:\n;scanf%f%f%f,s-score
[0],s-score[l]z s-score
[2];}//输出学生信息printf\n学生信息\n姓名\t学号\t语文\t数学\t英语\n;fors=student;sstudent+5;s++printf,%s\t%d\t%.lf\t%.lf\t%.lf\n,s-name,s-idnum,s-score
[0],s-score[l]/s-score
[2];//计算学生总分病返回总分最高的学生信息s=highscorestudent,5;printf\n总分最高的学生是%s,学号%d\n成绩语文%.lf数学%.lf英语%.lf总分%.lf\nz s-name,s-idnumz s-score
[0]z s-score[l]z s-score
[2]z s-total;#includeusing namespace std;struct students{int sid;float score
[3];float sum;float ave;};void main{int i;struct studentsstu
[3]={{1001,{85,90,90}},{1002X70,80,90}},{1003,{80,90,80}}};cout学号成绩1«成绩2成绩3总成绩平均成绩«endl;for i=0;i3;i++{stu[i].sum=stu[i].score
[0]+stu[i].score
[1]+stu[i].score
[2];stu[i].ave=stu[i].sum/3;cout«stu[i].sid««stu[i].score
[0]««stu[i].score
[1]««stu
[1].sco⑹2]v〃«stu[i].sum«*«stu[i].ave«endl;}}
6.
11.
6.3用typedef说明一个新类型l.D2,A
11.
6.4链表l.C
2.C3,B
12.
6.1文件的概念及文件类型指针
1.C2,A
3.D
12.
6.2文件的打开与关闭
1.
1.1A
3.C4,D
12.
6.3文件的读写
1.B2,C
3.D4,C
12.
6.4文件的定位
1.B2,C#include stdio.h int mainchar azb;printf”输入一个小写字母:\n a=getchar;b=a-32;printf转换后的字母为:%c,%d\n”,b,b;return0;c语言编译器运行自动保存于1600061#includestdio.h2intmain{3int a
[3];4int i=O,sum=O;5float aver;6printf请输入3个数”;7fori=0;i3;i++scant%d,a[i];8fori=0;i3;i++9iosum+=a[i];11aver=floatsum/3;i2printfsum=%d aver=%f,sum,aver;i3return0;14}|
4.
6.1进制转换l.BG
2.CH
4.
6.2数据类型l.D
2.A
3.D
4.
6.3常量与变量1C2#includestdio.h intmain floatp,r,n;r=
0.1;n=10;p=powl+r,n;printfp=%iV,p;return0;#include stdi$iti#include mfath*hVo intmain~彳double r=O.G^_Tz3double p;int n=10;P=pow1+r rn;printf“10年后增长了%f倍,P);return0;cl=a,c2=b cl=97,c2=98464标识符l.D
2.A
5.
6.1关系、条件及逻辑运算符l.C
2.C
3.A
4.D
5.B
5.
6.2条件语句
5.
6.
32.D
3.B
4.A
5.D
6.B7#include stdio.h intmainint a,b,c,max;scanf n%d%d%d H,a,b,c;ifabif ac max二a;else max二c;elseif bc max=b;else max二c;printf n%d\n,,max;return0;
8.,UT•/include Vstdio.h intmain1ini xty;prinif输入xw;scanf%d、x;ifxl//xl{y=x;printfx=%d.y=x=%d\n”,x.y;}..else ifx10//I=x10{y=2*x-1»printfx=%d,y=2*x-1=%d\n\xy;else//x=10\y=3♦x-11;printf Mx=%dt y=3*x~11=%d\n,xy;return0;#include sldio.h intmain floatscore;char grade;printfG请输入学生成绩scanf%「,score;while scorc1001scorc0{prinW输入人谈,请或输scanf f,%f\score iswitch iniscore/]case10•case9•grade=A;break;case8grade=B;break;case7•grade=Cbreak;case6grade=*D*;break;case5case4;case3;case2case1case0gradc=;primf成绩是%
5.lf・相应的等级是%c\n”.score,grade的return0;
9.10•include stdio.h intmainlong int1;int bonus1■bonus2,bonus4,bonus6,bonus10,bonus;scanf Fd**.i;bonusl«100000*
0.1;bonus2«bonusl*100000*
0.75;bonus4abonus2*200000*
0.5;bonus6Mbonu94*200000*0«3;bonus10・bonus6*400000*
0.15;if K-100000bonus«l e
0.1;else ifi«200000bonus«bonusl*i-100000*
0.075;else ifi«400000bonu8-bonus2*i-200000e
0.05;•Ise if K-600000bonus-bonus4*1-400000*
0.03;ifK-1000000bonus«bonus6*1-600000e
0.015;•Ise bonu8«bonusl0*1-1000000#
0.01;prlntfbonus-ld,bonus;11#include intmain{int a;printf n从键盘输入1整数;scanf n%d u,a;ifa%3==0a%5==0printfC,%d可被3,5整除0\n”,a;ifa%3==0a%5=0printf n%d可被3,5整除O\n”,a;ifa%3=0a%5!=0printf n%d可被3,整除O\n H,a;ifa%3!=0a%5==0printf M%d可被5,整除O\n H,a;ifa%3==0a%5!=0print%d可被3整除O\n H,a;ifa%3!=0a%5==0printf n%d可被5整除O\n H,a;ifa%3!=0a%5!=0printf H%d可被整除\n n,a;ifa%3!=0a%5!=0printfC,不能被
3、5任一个整除\n”,a;}12#include iostreamusingnamespacestd;main{int n;cin»n;switchn{case l:cout«星期一n«endl;break;case2:cout«星期«endl;break;case3:cout«n星期—u«endl;break;case4:cout«星期四n«endl;break;case5:cout«n星期五n«endl;break;case6:cout«星期六u«endl;break;case7:cout«n星期日endl;break;default:cout输入错误vendl;break;}return0;}
6.
9.1基本循环语句
1.C
2.A
3.B
4.D51236i二0,s二1i=l,s=4i=2,s=9i=3,s=167m=4m=10m=22m=46m二
946.
9.2嵌套循环l.A20,0,1,0,LD,2,0,2,l,2,2,3,0,3,1,3,2,3,3,
6.
9.3跳转语句
1.D
2.main#int ij,k;fori=0;i=3;i++#forj=0j=2-j++printf u;forlprintf*printf\n;fori=0;i=2;i++#for2printf;printf u;fork=0;k=4-2*i;k++printf*;printfC,\n;
6.
9.4循环应用
1.#includemath.h voidAdddouble m.double n#printf%g+%g=%g\n,m,n,m+n;void Reducedoublem,double nprintf%g-%g=%g\n1m,n,mn;void Multidoublem,double nprintf%g*%g=%g\nm1n,m*n;void Divisiondouble p,double qifq==O printf”除数不能为零,请重新输入:;elseprintf%g/%g=%g\np,q,doublep/q;int mainprintf--欢迎使用计算器功能--------------------------------------------------------------------\n;printf“请选择您所要进行的计算\n上加法\n2:减法\n3:乘法\n4:除法\n”;intn;scanf“%cT,n;ifn=Olln4printf“你的输入错误,请重新输入\n”;ReturnO;printf“请输入您所要计算的数\rT;double ij;scanf%lf%lf,i,j;ifn==l Addij;else ifn==2Reducej;delse ifn==3Multij;else ifn==4return0;
2.#includestdio.h intmain{{int day,xl,x2;day=9;x2=l;whileday0{xl=x2+l*2;x2=xl;day--;}printftotal=%d\n,xl;return0;
3.
4.#include intmainvoidint big,mid,sma;for big=0;big34;big++for mid=0;mid=50;mid++sma=100-big-mid;if3*big+2*mid+sma*0,5==100printf大马%d匹,\t中马%d匹,\t小马%:1匹.\n,big,mid,sma;。