• 134.00 KB
  • 2022-04-22 11:42:38 发布

答案_教材第三版_第七章以后只有选择填空题答案_.doc

  • 18页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'第一章习题参考答案一、单项选择题1.C2.B3.B4.C5.D6.A7.C8.A二、填空题1.判断条件2.面向过程编程3.结构化4.程序5.面向对象语言6.基本功能操作控制结构7.有穷性8.直到型循环结构9.算法10.可读性11.模块化12.对问题的分解和模块的划分第二章习题参考答案一、单项选择题1.B2.D3.C4.B5.A6.A7.B8.C二、填空题1.主2.C编译系统3.函数一个主函数和若干函数4.输入输出5.以.h为扩展名的头文件6..obj7.库函数8.文本第三章习题参考答案一、单项选择题1.D2.B3.A4.C5.C6.D7.B8.D9.B10.C11.A12.D13.C14.C15.C16.C17.B18.C19.C20.D21.A22.D23.D24.DA25.D26.A 二、填空1.补码2.取绝对值为10-308~1030815~16位3.0或14.赋值右向左5.函数调用6.65,89三、应用题1.1092.11001213.区别是:求负:单目,右结合-a+b减法:双目,左结合a-b取地址:单目,右结合&a按位与:双目,左结合a&b第四章习题参考答案一、单项选择题1.D2.C3.D4.A5.D6.B7.A8.C9.B10.B二、填空题1.一条;2.5.1690003.(1)-2002500(2)i=-200,j=2500(3)i=-200j=25004.a=98,b=765.000000,c=4321.0000005.三种可能的输入是:(1)100<回车>25.81<回车>1.89234<回车>(2)100<空格>25.81<空格>1.89234<回车>(3)10025.811.89234<回车>6.0,0,37.38.输入语句是:scanf("%lf%lf%lf",&a,&b,&c); 9.1313.00000013.00000010.3种方法:(1)增加一个临时变量t。t=a;a=c;c=t;(2)b=a;a=c;c=b;(3)a=a+c;c=a-c;a=a-c;三、编程题1.#includeintmain(){printf("***************************n");printf("verygood!n");printf("***************************n");}2.#includeintmain(){inthour,min;scanf("%d,%d",&hour,&min);min=60*hour+min;printf("%dn",min);}3#includeintmain(){floatc,f;scanf("%f",&c);f=32+9.0*c/5;printf("%fn",f);}按题目要求分别输入-10,0,15和34计算相应的华氏温度。4#includeintmain(){floatr,l,s;scanf("%f",&r);l=2*3.141592*r;s=3.14159*r*r;printf("r=%f,l=%f,s=%fn",r,l,s);}5 #include#includeintmain(){floata,b,c,s,area;scanf("%f,%f,%f",&a,&b,&c);if((a+b>c)&&(a+c>b)&&(b+c>a))/*判断两边之和大于第三边*/{s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));/*调用开方函数,计算面积*/printf("area=%fn",area);}}6#includeintmain(){inta=3,b=4,c=5;floatd=1.2,e=2.23,f=-43.56;printf("a=%3d,b=%-4d,c=**%dn",a,b,c);printf("d=%3.1fne=%6.2fnf=%-10.4f**n",d,e,f);}7#includeintmain(){inta,b,c,t;scanf("%d,%d,%d",&a,&b,&c);printf("a=%d,b=%d,c=%dn",a,b,c);t=a;a=b;b=c;c=t;printf("a=%d,b=%d,c=%dn",a,b,c);}8#includeintmain(){floata,b,c,aver;printf(“Pleaseinputthreenumbers:n”);scanf("%f,%f,%f",&a,&b,&c);aver=(a+b+c)/3;printf("averageof%5.2f,%5.2fand%5.2fis%5.2fn",a,b,c,aver);} 9#includeintmain(){inta,b,c,x,y;scanf("%d%d%d",&a,&b,&c);x=a*b;y=x*c;printf("a=%d,b=%d,c=%dn",a,b,c);printf("x=%d,y=%dn",x,y);}第五章习题参考答案一、单项选择题1.B2.D3.C4.B5.B6.D7.A8.B9.D二、填空题1.非002.k==0或!k!=03.if(x>4||x<-4)printf("%d",x);elseprintf("error!");或:(x>4||x<-4)?printf("%d",x):printf("error!");或:if(fabs(x)>4)printf("%d",x);elseprintf("error!");4.if((x%2!=0)&&((x>=1&&x<=10)||(x>=200&&x<=210)))printf(“%d”,x);5.16.k=17.10!Right!118.$$$a=09.a=2,b=110.a>0&&ab)&&(a>c))if(bintmain(){longa;intk;scanf("%ld",&a);printf("%ldn",a);loop:if(a!=0){k=a%10;printf("%d",k);a=a/10;gotoloop;}return0;}3.(1)用简单的if结构#includeintmain(){intx,y;scanf("%d",&x);if(x<0&&x>-5)y=x;if(x<5&&x>=0)y=x-1;if(x>=5&&x<10)y=x+1;printf("%d,%dn",x,y);return0;}(2)用嵌套的if结构#includeintmain(){intx,y;scanf("%d",&x);if(x<5) if(x<0)if(x>-5)y=x;elsey=x-1;elseif(x<10)y=x+1;if(x>=10&&x<=-5)printf("%derror!n",x);elseprintf("%d,%dn",x,y);return0;}(3)用if-else分支结构#includeintmain(){intx,y;scanf("%d",&x);if(x>=10&&x<=-5)printf("%derror!n",x);elseif(x<0)y=x;elseif(x<5)y=x-1;elsey=x+1;printf("%d,%dn",x,y);return0;}(4)用switch()结构#includeintmain(){intx,y,k;printf("Pleaseinputx:-----10n");p:scanf("%d",&x);if(x>=10&&x<=-5){printf("%derror!Inputagain!n",x);gotop;}if(x<0)k=-1; elsek=x/5;switch(k){case1:y=x+1;break;case0:y=x-1;break;case-1:y=x;break;}printf("%d,%dn",x,y);return0}4.#includeintmain(){inty0,m0,d0,y1,m1,d1,age;printf("Pleaseinputcurrentday:n");scanf("%d,%d,%d",&y1,&m1,&d1);printf("Pleaseinputbirthday:n");scanf("%d,%d,%d",&y0,&m0,&d0);age=y1-y0;if(m1intmain(){inta,b,c;printf("Pleaseinputa,b,c:n");scanf("%d,%d,%d",&a,&b,&c);/*输入三角形的三条边*/if(a+b>c&&a+c>b&&b+c>a)/*判断两边之和大于第三边*/if(a==b&&b==c)/*判断等边三角形*/printf("等边三角形n");elseif(a==b||a==c||b==c)/*判断等腰三角形*/printf("等腰三角形n");elseprintf("一般三角形n");elseprintf("不能组成三角形n");return0; }6.main(){intx,y,k;scanf("%d",&x);k=x/10;if(k<1)k=1;switch(k){case1:y=1;break;case2:y=2;break;case3:y=3;break;case4:y=4;break;case5:y=5;break;default:y=6;}printf("x=%d,y=%dn",x,y);return0;}7.#includeintmain(){intm,k;floatn;printf("Pleaseinput购买金额m:n");scanf("%d",&m);k=m/100;switch(k){case0:n=0;break;case1:n=0.015;break;case2:n=0.025;break;case3:n=0.035;break;case4:n=0.045;break;case5:n=0.055;break;default:n=0.06;}printf("%5d,%7.2f,%7.2f",m,m-n*m,m*n);/*输出购买金额、实际支付金额和返还金额*/return0;}8.本程序使用goto语句实现,仅供参考,请勿模仿。 #includeintmain(){intyear=1995,month,days=0;loop:if(year<=2000){days=days+7*31+4*30+28;/*每年增加365天*/if(year%4==0&&year%100!=0||year%400==0)/*判断闰年*/days++;year++;gotoloop;}days=days-21;/*仅计算到2000年12月10日*/printf("Thetotaldaysis:%dn",days);return0;}9.本程序使用goto语句实现,仅供参考,请勿模仿。#includeintmain(){longa;intb,k=0,m;printf("Pleaseinputa<99999:n");scanf("%ld",&a);b=a%10;m=a;loop:if(m!=0){k++;m=m/10;gotoloop;}}printf("%ld,%dn",a,k);return0;}10:本程序使用goto语句实现,仅供参考,请勿模仿。#include#includeintmain(){longa,m,n=0;inti=0,k;scanf("%ld",&a);m=a;loop:if(m!=0){k=m%10; k=k+2;if(k>=9)k=k%10;m=m/10;n=k*pow(10,i)+n;i++;gotoloop;}printf("%ld,%ldn",a,n);return0;}第六章习题参考答案一、选择题1.B2.C3.C4.B5.C6.B7.C8.A二、填空题1.无数次2.83.204.115.2.4000006.*#*#*#$7.8528.①d=1.0②k++③k<=n9.①x>=0②xintmain(){inti,k,s=0;k=1;for(i=1;i<=101;i+=2){s+=k*i;k=-k;}printf("s=%dn",s);return0;}2. #includeintmain(){inti,k,s1=0,s2=0;for(i=1;i<=10;i++){scanf("%d",&k);if(k>=0)s1+=k;elses2+=k;}printf("s1=%d,s2=%d,s1+s2=%dn",s1,s2,s1+s2);}3.#includeintmain(){inti,k;scanf("%d",&k);while(k>0){printf("%d,",k%10);k=k/10;}}4.#includeintmain(){inti=1,x,y,a=1;scanf("%d,%d",&x,&y);while(i<=y){a=a*x%1000;i++;}printf("%dn",a%1000);return0;}5.#includeintmain(){inti,j,x;floatav,s;for(i=1;i<=6;i++)/*对6个学生循环*/{s=0;for(j=1;j<=5;j++)/*输入每个学生的5门课成绩,并输出*/ {scanf("%d",&x);printf("%5d",x);s=s+x;}av=s/5;/*计算每个学生的平均成绩av*/printf("nNO.%d:av=%fn",i,av);/*输出每个学生的平均成绩*/}}6.#includeintmain(){inti,n;doublet=1,e=0;/*(1)计算前n项*/scanf("%d",&n);for(i=1;i<=n;i++){t=t*i;/*i!*/e+=1/t;}printf("n=%d,e=%fn",n,e);/*(2)*/t=1,e=0;i=1;while(1/t>=1e-4){e+=1/t;i++;t=t*i;/*i!*/}printf("e=%fn",e);}7.#includeintmain(){intj,n,x1,x2,x3,x;scanf("%d",&n);printf("%8d%8d%8dn",x1=1,x2=2,x3=3);for(j=4;j<=n;j++){x=x1+x2+x3;x1=x2;x2=x3;x3=x;printf("%8d",x);if(j%3==0) printf("n");}/*3个数一行*/printf("n");/*改进的方法,一次产生3个数printf("**%8d%8d%8dn",x1=1,x2=2,x3=3);for(j=4;j<=n;j+=3){x1=x1+x2+x3;x2=x1+x2+x3;x3=x1+x2+x3;printf("**%8d%8d%8dn",x1,x2,x3);}*/return0;}8.方法1:#includeintmain(){inti,j,k,n,p,t,u=0;for(i=1012;i<=9998;i+=2){j=i/1000;k=i/100%10;n=i/10%10;p=i%10;if(j!=k&&j!=n&&j!=p&&k!=n&&k!=p&&n!=p)printf(“%dn”,i);}return0;}方法2:#includeintmain(){inti,j,k,n,p,t,u=0;for(i=1;i<10;i++){for(j=0;j<10;j++){if(i==j)continue;for(k=0;k<10;k++){if(i==k||j==k)continue;for(p=0;p<9;p+=2){if(i==p||j==p||k==p) continue;t=i*1000+j*100+k*10+p;printf("%8d",t);/*输出满足条件的4位偶数,8个数一行*/u++;if(u%8==0)printf("n");}}}}return0;}9.#includeintmain(){inti,j,k;for(i=1;i<10;i++)for(j=1;j<90;j++){k=100-i-j;if(40*i+4*j+2*k==400)printf("%d,%d,%dn",i,j,k);}return0;}10.#includeintmain(){inti,j,n,k;scanf("%d",&n);for(i=1;i<=n;i++){for(j=1;j<=n+i-1;j++)if(j<=n-i)printf("");elseprintf("*");printf("n");}for(i=n-1;i>=1;i--){for(j=1;j<=n+i-1;j++)if(j<=n-i)printf("");else printf("*");printf("n");}return0;}第七章习题参考答案一、选择题1.B2.D3.C4.C5.A6.A7.D8.A二、填空题1.12481632641282565122.假设输入的年龄都<30①a[age]++②i=18;i<=253.①break;②i==84.①a[i]>b[j]②i<3③j<55.①b[j]=a[j][0]②b[j]=a[j][k]6.a[k++]=a[j] 第八章习题参考答案一、选择题1.B2.C3.C4.A5.A6.C7.C8.D9.D10.B11.A12.C13.A14.C15.B二、填空题1.①return0②returnn+sum(n-1)2.①return1②returnn*facto(n-1)第九章习题参考答案一、选择题1.D2.C3.D4.A5.C6.C7.C8.D9.B10.C11.A12.A13.B14.B15.B16.D17.C18.A19.B20.D二、填空题1.①int*②*z2.*p++3.①‘’②++4.①p+1②q-pmax⑤*qday(*b).day6.adabcdefghimnohino第十一章习题参考答案一、选择题1.A2.A3.B4.A5.D6.D7.B8.A9.B10.B11.B12.B13.C14.C15.D16.D17.D二、填空题1.ASCII码二进制2.pf=fopen(“A:\zk04\data\txtfile.dat”,”r”);3.fputc(ch,fp)fprintf(fp,“%c”,ch)fwrite(&ch,sizeof(ch),1,fp)4.文本二进制文件尾非0值'