1《C程序设计》单元练习(顺序结构)答案一、选择题1)32)33)44)15)26)1、2、47)18)29)110)211)312)313)114)415)416)417)418)219)320)421)422)2、323)424)125)326)127)428)429)230)331)2二、填空题(1)F9(2)F10三、编制程序1、main(){inta,b,c;floatx,y,z;longn;unsignedu;charc1,c2;a=3;b=4;c=5;x=1.2;y=2.4;z=-3.6;u=51274;n=128765;c1=’a’;c2=’b’;printf(“a=%db=%dc=%d\n”,a,b,c);printf(“x=%f,y=%f,z=%f\n”,x,y,z);printf(“x+y=%.2fy+z=%.2fz+x=%.2f\n”,x+y,y+z,z+x);printf(“u=%un=%ld\n”,u,n);printf(“c1=’%c’or%d(ASCII)\n”,c1,c1);printf(“c2=’%c’or%d(ASCII)\n”,c2,c2);}2、main(){floatc,F;printf(“pleaseinsertF:”);scanf(“%f”,&F);c=(5.0/9)*(F-32);printf(“c=%.2f/n”,c);}2《C程序设计》单元练习(选择结构)答案一、选择题:1、(4)2、(4)3、(1)4、(1)5、(3)6、(3)7、(1)8、(1)9、(2)10、(3)11、(4)12、(3)13、(3)14、(4)15、(2)16、(2)17、(2)18、(2)二、编程题1、(1)用if语句:main(){intx,y;scanf(%d,&x);if(x=10||x=-5){printf(\nerror,enterxagain!\n);scanf(%d,&x);}if(x0&&x-5)y=x;if(x==0)y=x-1;if(x10&&x0)y=x+1;printf(%d\n,y);}(2)用switc语句:main(){intx,y;intc;scanf(%d,&x);if(x!=0)c=(x0);elsec=2;if(x=10||x=-5)c=3;switch(c){case0:y=x;printf(x=%d,y=%d\n,x,y);break;case1:y=x+1;printf(x=%d,y=%d\n,x,y);break;case2:y=x-1;printf(x=%d,y=%d\n,x,y);break;case3:printf(error!\n);}}2、main(){intyear,leap;scanf(%d,&year);if((year%4==0&&year%100!=0)||(year%400)==0)leap=1;elseleap=0;if(leap)printf(%dis,year);elseprintf(%disnot,year);printf(aleapyear.\n);}3《C程序设计》单元练习(循环结构)答案一、选择题:1)32)23)24)35)46)37)48)49)210)4二、填空题:1)42)x0xamin3)n=1t*(n/(2*n)+1)s4)11,8,5,2,5)1428354956707791986)52三、编程题1、main(){inti,j,k;charc='A';for(i=0;i=4;i++){for(j=0;j=4-I;j++)printf();/*输出字母前面的空格*/for(k=0;k=2*i;k++)printf(%c,c+i);printf(\n);}}2、main(){floats=0,t=1;intn;for(n=1;n=20;n++){t=t*n;s=s+t;}printf(%f,s);}3、main(){inti,j,k,n;printf(theflowernumberis:);for(n=100;n1000;n++){i=n/100;j=n/10-i*10;k=n%10;if(n==i*i*i+j*j*j+k*k*k)printf(%4d,n);}4printf(\n);}《C程序设计》单元练习(数组)答案一、选择题1)42)13)44)35)36)27)18)29)210)411)312)4二、填空题1、s=12342、m=453、0,6,54、#95、NOTICE6、FGHKL7、you&me8、&a[i]a[i]j-1j%5==09、jst[j-1]st[j-1]10、‘\0’st1[n]-st2[n]11、n%base[d]三、编程题1、main(){floata[10];inti;floatmax,min,sum,aver;for(i=0;i10;i++)scanf(%f,&a[i]);max=min=a[0];for(i=0;i10;i++){if(a[i]max)max=a[i];if(a[i]min)min=a[i];sum+=a[i];}aver=(sum-max-min)/8;printf(%f,aver);}2、main(){inta[3][4],b[4][5];inti,j,k,c[3][5];for(i=0;i3;i++)for(j=0;j4;j++)scanf(%d,&a[i][j]);for(i=0;i4;i++)for(j=0;j5;j++)scanf(%d,&b[i][j]);for(i=0;i3;i++)for(j=0;j5;j++)5{c[i][j]=0;for(k=0;k4;k++)c[i][j]+=a[i][k]*b[k][j];}for(i=0;i3;i++){for(j=0;j5;j++)printf(%5d,c[i][j]);printf(“\n”);}}《C程序设计》单元练习(函数)答案一、选择题1)42)33)24)35)46)17)38)19)110)311)212)113)4二、填空题1)122)9.0000003)44)-1三、编程题1)main(){voidinverse(charstr[]);charstr[100];printf(“Inputstring:”);scanf(“%s”,str);inverse(str);printf(“Inversestring:%s\n”,str);}voidinverse(charstr[]){chart;inti,j;for(i=0,j=strlen(str);istrlen(str)/2;i++,j--){t=str[i];str[i]=str[j-1];str[j-1]=t;}}2)intgys(intu,intv)6{intt,r;if(vu){t=u;u=v;v=t;}while((r=u%v)!=0){u=v;v=r;}return(v);}intgbs(intu,intv,inth){return(u*v/h);}main(){intu,v,h,l;scanf(%d,%d,&u,&v);h=gys(u,v);printf(GYS=%d\n,h);l=gbs(u,v,h);printf(GBS=%d\n,l);}3)#defineM3#includeconio.hmain(){staticinta[M][M];inti,j;voidput(),chang();printf(Intershuzu:\n);for(i=0;iM;i++)for(j=0;jM;j++)scanf(%d,&a[i][j]);printf(beforeall:\n);put(a);printf(aftercall:\n);chang(a);put(a);7}voidput(b)intb[][M];{inti,j;for(i=0;iM;i++){for(j=0;jM;j++)printf(%5d,b[i][j]);printf(\n);}printf(\n);}voidchang(b)intb[][M];{inti,j,t;for(i=1;iM;i++)for(j=0;ji;j++){t=b[i][j];b[i][j]=b[j][i];b[j][i]=t;}}4)#defineN10#defineM5floatscore[N][M];floata_stu[N],a_cour[M];intr,c;main(){floathighest();voidinput_stu(void);voidaver_stu(void);voidaver_cour(void);inti,j;floath;input_stu();aver_stu();aver_cour();printf(\nNO.cour1cour2cour3cour4cour5aver\n);8for(i=0;iN;i++){printf(\nNO.%2d,i+1);for(j=0;jM;j++)printf(%8.2f,score[i][j]);printf(%8.2f,a_stu[i]);}printf(\n\naverage:);for(j=0;jM;j++)printf(%8.2f,a_cour[j]);h=highest();printf(\nhighest:%7.2fNO.%2dcourse%2d\n,h,r,c);}voidinput_stu(void){inti,j;for(i=0;iN;i++){printf(\nInputscoreofstudent%2d:\n,i+1);for(j=0;jM;j++)scanf(%f,&score[i][j]);}}voidaver_stu(void){inti,j;floats;for(i=0;iN;i++){for(j=0,s=0;jM;j++)s+=score[i][j];a_stu[i]=s/5.0;}}voidaver_cour(void){inti,j;floats;9for(j=0;jM;j++){s=0;for(i=0;iN;i++)s+=score[i][j];a_cour[j]=s/(float)N;}}floathighest(){floathigh;inti,j;high=score[0][0];for(i=0;iN;i++)for(j=0;jM;j++)if(score[i][j]high){high=score[i][j];r=i+1;c=j+1;}return(high);}5)#defineN10charstr[N];main(){voidsort(charstr[]);inti,flag;for(flag=1;flag==1;){printf(\ninputstring:\n);scanf(%s,&str);if(strlen(str)N)printf(Stringtoolong,inputagain!);elseflag=0;}sort(str);10printf(stringsorted:\n);for(i=0;iN;i++)printf(%c,str[i]);}voidsort(charstr[]){inti,j;chart;for(j=1;jN;j++)for(i=0;(iN-j)&&(str[i]!=\0);i++)if(str[i]str[i+1]){t=str[i];str[i]=str[i+1];str[i+1]=t;}}《C程序设计》单元练习(指针)答案一、选择题1)12)33)14)25)46)37)28)19)410)211)312)1二、填空题1)712)21433)1104)5)*(p+7)6)99117)8528)ABCDBCDCDD三、编程题1、main(){intnumber[10];input(number);max_mi