最新《C语言程序设计》(清华大学出版社)书后习题参考答案.doc

上传人:1595****071 文档编号:33846165 上传时间:2022-08-12 格式:DOC 页数:27 大小:191.50KB
返回 下载 相关 举报
最新《C语言程序设计》(清华大学出版社)书后习题参考答案.doc_第1页
第1页 / 共27页
最新《C语言程序设计》(清华大学出版社)书后习题参考答案.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《最新《C语言程序设计》(清华大学出版社)书后习题参考答案.doc》由会员分享,可在线阅读,更多相关《最新《C语言程序设计》(清华大学出版社)书后习题参考答案.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精品资料C语言程序设计(清华大学出版社)书后习题参考答案.第一步部分 简单程序设计P55.课堂实践 (1)#include main()printf(“*n”);printf(“*n”);printf(“*n”);(2)#includemain /*main()*/printf(“Hello,World.n);P95.课堂实践 (1)#includemain() char a=116,b=119,temp;printf(“a=%c,b=%cn”,a,b);temp=a;a=b;b=temp;printf(“a=%c,b=%cn”,a,b);(2)功能:交换x,y的值;#includemain(

2、) int x,y; x=5; y=10; x=x+y; y=x-y;x=x-y;printf(“%d,%d”,x,y);(3)c:dec=120,oct=170,hex=78,ASCLL=x4、输出内容向左靠齐 12 123.141592600000000000000000000000003.14159260000000000000000000000000P115.课堂实践 (1)3.0-(3.0*4)/(4+2)#includemain() float x;x=3.0-(3.0*4)/(4+2);printf(“%f”,x);1/2*(2*3+2/(2*2*2)#includemain()

3、 float x;x=1/2*(2*3+2/(2*2*2);printf(“%f”,x);(2)%(3)B(4)#includestdio. hmainx,y,z;/*没有数据类型*/ xy5;/*赋值表达式左边不能是表达式,应为一个变量*/printf(xy,z,x,y,z);/*没有输入格式符*/ P135.课堂实践 (1)-14(2)(1)x=4,8 (2)8,8(3)#include mian() int x=10;printf(“当x变量的初值为%d时,进行+=运算后的结果为%d”,x,x+=x); printf(“当x变量的初值为%d时,进行-=运算后的结果为%d”,x,x-=x)

4、; printf(“当x变量的初值为%d时,进行*=运算后的结果为%d”,x,x*=x); printf(“当x变量的初值为%d时,进行/=运算后的结果为%d”,x,x/=x); P13习题 一、1、C 2、C 3、A 二、5,-4 6,12,20P185.课堂实践 (1)#includemain() int x,y;scanf(“%d%d”,&x,&y);if(xy) printf(“xy”);else if(xy) printf(“xy”);else printf(“x=y”);(2)#includemain() int x,y;scanf(“%d”,&x);if(x0) y=1;if(x

5、=0) y=0;if(x0) y= -1;printf(%d”,y);P215.课堂实践 (1)C (2)B (3)B (4)0.500000(5)不能:#includemain( )int x,y,z,max;if(zy) if(zx) maxz; else max=x; else if (yx) maxy; else max=x;printf(nmax%d ,max);P23 略P24习题一、1、D 2、D 3、C 4、D 5、B 6、B 7、B二、1、y%2=0 2、& | ! 3、(x2&x3)|(x=A&ch=z) ch=ch-32;5、1,06、F三、1、#includemain(

6、)int a;scanf(%d,&a);if(a%5=0&a%7=0)printf(yes);else printf(no);2、#includemain()int m;scanf(qingshuru:%d,&m); if(m%4=0&m%100!=0)|m%400=0) printf(%d shirunnian,m); else printf(%d bushirunnian,m);3、 #include#includemain() float a,b,c,dise,x1,x2,realpart,imagpart;scanf(“%f%f%f”,&a,&b,&c); printf(“The eq

7、uation”);if(fabs(a)=0) printf(“is not a quadraticn”);else dise=b*b-4*a*c;if(dise0) x1=(-b+sprt(disc)/(2*a);x2=(-b-sprt(disc)/(2*a);printf(“has distinct real roots:%8.4f and%8.4fn”,x1,x2);elserealpart=-b/(2*a);imagpart=sqrt(-disc)/(2*a);printf(“has complex roots:n”);printf(“%8.4f+%8.4fn”,realpart,ima

8、gpart);printf(“%8.4f-%8.4fn”, realpart,imagpart);P285、课堂实践(1)#includemain( )int key;char ch;printf(*n);scanf(%d,&key);printf(?:n);while(ch=getchar()!=n)(ch-key)122?putchar(ch+122-33-key):(ch-key)33?putchar(ch-122-key):putchar(ch-key); (2)#includemain() int i; /*i没有赋值*/ int i=1;printf(“output ten num

9、bers:n”); while(i=10)printf(“%3d”);/*没有输出参数*/ printf(“%3d”,i); i+; /*应加组成复合语句*/ i+; P304. 课堂实践 (1)#includemain() int a,s=0;do scanf(“%d”,&a);s+=a;while(a!=-1);printf(“%d”,s);(2)#includemain() int a,b,r,t,maxB;scanf(“%d%d”,&a,&b);if(ab) t=a;a=b;b=t;r=a%b;while(r!=0) a=b;b=r;r=a%b;maxB=b;printf(“maxB

10、is %d”,maxB);P336. 课堂实践 (1)4(2)#includemain()int i,j;printf(*九九乘法表*);for(i=1;i10;i+)for(j=1;j=i;j+)printf(%d*%d=%dt,j,i,i*j);printf(n);#includemain()int i=1,j;while(i10) j=1;while(j=i) printf(%d*%d=%dt,j,i,i*j);j+;printf(n);i+;#includemain()int i=1,j;do j=1;do printf(%d*%d=%dt,j,i,i*j);j+;while(j=i)

11、;printf(n);i+;while(i10);(3)#includemain() int x;scanf(%d,&x);while(x0) printf(%d,x%10);x/=10; prtntf( );P33习题【参考答案】一、1、D 2、C 3、A 4、A 5、D 6、C 7、D 8、D 9、C 10、B二、1、36 2、3 4、1 3 5、 i=10 if(j%6!=0)三、1、#includemain()int a,sum=0;for(a=1;a=100;a+)if(a%2=1)sum=sum+a;printf(%d,sum);2、#includemain() int i,j,s

12、;int t;int k100;for(i=1;i=1000;i+)s=0;t=0;for(j=1;j0;)if(t1)printf(%d+,k-t);else printf(%d,k-t);printf(n);3、#includemain() int y,t=0; for(y=1008;y=2008;y+) if(y%4=0&y%100!=0|y%400=0) printf(“%dt”,y);t+; if(t%5=0) printf(“n”);4、#includemain() int t,i,x,max,min;scanf(“%d”,&t); max=min=t;for(i=1;i10;i+

13、) scanf(“%d”,&x); if(max=x)min=x;printf(“%dt%dn”,max,min);5、#includemain() int i,j,p;for(i=1;i=4;i+) for(p=1;p=2*i-1;j-)printf(“*”);printf(“n”);P395课堂实践(1)float compare (float a,b,c) float k; if (a=b) k=a; if(a=c) k=a; else k=c; else k=b; if(b=n) k=n; else k=m; for(i=1;i=b) k=a; else k=b; for(x=a*b;

14、x=k;x- -) if(x%a=0&x%b=0) y=x; return y;P41 课堂实践(1)#includefloat zhouchang (float x) float l;l=2*3.14*x;return l;float mianji (float y) float s;s=3.14*y*y;return s;voide main () float r;scanf(%f,&r);float m,n;m=zhopuchang (r);n=mianji (r);printf(m=%fnn=%fn,m,n);(2) float add (float x,float y)Float z

15、;Z=x+y;Return z;float sub(float h,float k)float w; w=h-k;return w;float mul(float m,n)float i;i=m*n;return i;float div(float e,f)float g;g=e/f;return g;void main()float p,g;scanf(%f%f,&p,&g);char a;lscanf(%c,&a);float j;if(a=+)j=add(p,g);else if(a=-)j=sub(p,g)else if (a=*)j=mul(p,g)else if (a=/)j=di

16、v(p,g)printf(%f,5);P43习题一选择1.B 2.D 3.D 4.A 5.C 6.B 7.B 8.B 9.A 10.D二填空1.函数首部和函数体2.void add; float add;3.1,1,14. 1,2,3;5. break; scanf(“%c”,&ch);6. x=4 y=9 z=57.first:14 ,4 ,12 second:26 ,4 ,12 third:26 ,3 ,68. a+b=99. 810. 125三1 #include#includefun (int x,int y) int m;m=x-y;m=abs(m);return m;2 void

17、deb (int x) int i;for(i=2;i=x)printf(%d is su shun,x);3. 略 第二部分 程序设计算法示例P676.(1)#includemain()int b,m,l;for(b=1;b20;b+)for(m=1;m33;m+)l=100-m-b;if(5*b+3*m+l/3=100)printf(%d%d%dn,b,m,l) (2) #includemain()int a,b,c,d;for(a=1;a10;a+) for(b=1;b20;b+) for(c=1;c50;c+) d=40-a-b-c; if(10*a+5*b+2*c+d=100) pr

18、intf(%d,%d,%d,%dn,a,b,c,d); P705.(1)#includemain()int a,b,c;c=2;for(a=2;a=3;a+) if(a=c) continue; b=6-a-c; if(b=c) continue; if(a=3) printf(a与z是对手n); if(b=1) printf(b与x是对手n); printf(c与y是对手n); 5.(2)#includemain () int d=5;int a,b,c,e,f,g;for(a=1;a=7;a+) if(a=d) continue; for(b=1;b=7;b+) if(b=a|b=d) c

19、ontinue; for(c=1;c=7;c+) if(c=a|c=b|c=d) continue; for(e=1;e=7;e+) if(e=a|e=b|e=c|e=d) continue; for(f=1;f=7;f+) if(f=e|f=d|f=c|f=b|f=a) continue; g=(23-a-b-c-e-f); if(g=f|g=e|g=d|g=c|g=b|g=a) continue; printf(a=%dnb=%dnc=%dnd=%dne=%dnf=%dng=%dn,a,b,c,d,e,f,g);5.(3) 略P71习题一、1. B2. D3. C4. C,D二1.2*x+

20、4*y=90;2.14三1. #includemain () int a,b,c;for(a=1;a=9;a+) for(b=0;b=9;b+) for(c=0;c=9;c+) if(a*a*a+b*b*b+c*c*c=100*a+10*b+c)printf(%d%d%dn,a,b,c);2#includemain () int bh,mh,lh;for(bh=1;bh=40;bh+) for(mh=1;mh=50;mh+) lh=100-bh-mh; if(3*bh+2*mh+lh/2) printf(bh=%dnmh=%dnlh=%dn); P755.#includemain () flo

21、at x1,x2;x1=1.5;x2=(x1+1/x1)/2;while(x1=x2)x1=x2;x2=(x1+1/x1)/2;printf(%f,x2);P765.(1) 略5.(2)#includemain () int day=1;int x1=0,x=0;float j;while(x1100) x=day*2;day+;x1+=x;j=x1*0.8/(day-=1);printf(%f,j);P76习题一1.(1)B (2)D2. (1)C (2)A二1.(1)x1=0 (2) x/0.5-22.sum%4=0三 略P80. 5、课堂实践#include void main() lo

22、ng int f1,f2;int i;f1=1; f2=1; for(i=1;i=20;i+) printf(“%4ld %4ld”,f1,f2);if(i%2=0) printf(“n”);f1=f1+f2;f2=f2+f1; P81. 5、课堂实践#include #include int s(int a,int b) int g;if( b= =0)g=1;else g=pow(a,b);return(g);main() int x,y,m;Scanf(“%d,%d”,&x,&y);m=s(x,y);printf(“%d”,m);P81.习题一、1、(1) age(n-1)+2 (2)a

23、ge(n) 2、计算Fibonacci数列第7项元素 k=13二、略P85.略P93.5、课堂实践(1) D (2) C (3) C (4)D(5)#include main() int a5,s5;int i;for(i=0;i5;i+)scanf(“%d”,&ai);for(i=0;i5;i+) si=ai+5;printf(“%d”,si); P96. 5、课堂实践(1)#include void main() int a10=265,301,751,129,937,863,742,694,76,438;int i,j,t;for(j=0;j9;j+)for(i=0;iai+1) t=a

24、i;ai=ai+1;ai+1=t;for(i=0;i10;i+)printf(“%d ”,ai); (2).补充直接插入排序原理。程序略3.#include #define N 10 void main()int a10=265,301,751,129,937,863,742,694,76,438;int i,j,t,k;for(i=0;iN-1;i+)k=i;for(j=i+1;jN;j+)if(ajak)k=j;t=ak;ak=ai;ai=t;for(i=0;iN;i+)printf(“%d”,ai); P98. 5、课堂实践 (1) C (2) D (3) C(4)#includevoi

25、d main() int a23=1,2,3,4,5,6;int b32, i,j;printf(“array a:n”);for(i=0;i2;i+) for(j=0;j3;j+) printf(“%3d”,aij);bji=aij;printf(“n”); printf(“array b:n”);for(i=0;i3;i+) for(j=0;j2;j+)printf(“%3d”,bij);printf(“n”;) P99. 习题一. (1) B (2) C (3) D (4) D (5) D (6) C (7) D (8) B (9) B (10) A1.按行存放 2. 2 0 3. 0

26、6 4&ai i%4= =0 printf(“n”);5. 1 0 0 0 00 1 0 0 0 0 0 1 0 00 0 0 1 00 0 0 0 1三1.#include #define N 10 void main() int aN,i ,t; for( i=0;iN;i+) scanf(“%d”,&ai); printf(“array a:n”);for(i=0;iN;i+)printf(“%4d”,ai);for(i=0;iN/2;i+) t=ai;ai=aN-i-1;aN-i-1=t; printf(“n now,array a:n”);for(i=0;iN;i+)printf(“

27、%4d”,ai);printf(“n”);2. #include void main() int a10, b9 ,i; for( i=0;i10;i+) scanf(“%d”,&ai);for( i=0;i9;i+)bi=ai+1/ai;for( i=0;i9;i+) if(i%3= =0)printf(“n”);printf(“%3d”,bi);3.#include void main()int a10=68,97,64,52,69,78,98,73,89,53int i, max=a0,t,s=0;float ave;for(i=1;i10;i+)if(maxai)max=ai;t=i;

28、printf(“%dn”,t);for(i=0;i10;i+)s+=ai;ave=s/10;printf(“%f”,ave);4.#include void main() int a33;int i,j, sum=0;for(i=0;i3;i+)for(j=0;j3;j+)scanf(“%d”,&aij);for(i=0;i3;i+)sum=sum+aii;printf(“%d”,sum);5.#include void main()int i,j,max;int a34,m=0,n=0;for(i=0;i3;i+)for(j=0;j4;j+)scanf(“%d”,aij);max=a00;f

29、or(i=0;i3;i+)for(j=0;j4;j+)if(maxaij)max=aij;m=i;n=j;printf(“m=%d,n=%d,max=%d”,m,n,max);P1055课堂实践(1)B (2)B (3)B (4)CP1085课堂实践(1)D (2) D (3)A(4)#include “stdio.h”#include “conio.h”main()int n1,n2,n3;int *p1,*p2,*p3;printf(“please input3 number:n1,n2,n3:”);scanf(“%d,%d,%d”,&n1,&n2,&n3):p1=&n1;p2=&n2;p

30、3=&n3;if(n1n2) swap(p1,p2);if(n1n3) swap(p1,p2);if(n2n3) swap(p2,p3);printf(“the sorted numbers are:%d,%d,%dn”,n1,n2,n3);swap(p1,p2)int *p1,*p2;int p;p=*p1;*p1=*p2;*p2=p;(5)略P109习题:1、B 2、B 3、B 4、B (fun(x,y);应为change(x,y)) 5、D二、1、地址、变量 2、a=0 b=33、4 12 4、2 5、*(x+i) *&xi *(&x0+i)6、25三、略P1124、课堂实践(1)ab

31、(2)Dp1155、课堂实践(1)C (2)D (3)A (4)9字符串abn012的长度是 9 。(勘误:将abn012改为-”abn012”) (5)400,(6)略P117 5、课堂实践(1)A (2)D (3)4,1P118习题一、(1)B (2)C (3)C (4)D (5)B (6)C二、1、hELLO! 2、bcdABCD 3、def 4、*2*4*6*8三、略P125 5、课堂实践(1)A (2)C (3)D(4)略P1274、课堂实践(1)70 (2)D (3)BP130 5、课堂实践(1)C (2)C (3)B (4)DP1335、课堂实践(1)97 (2)DP133 习题一、(1)A (2)C (3)C (4)C (5)B二、(1)10,4 (2)10,x (3)age q-name,q-age三、(略)P1514课堂实践(1)B (2)C P1524课堂实践(1)二进制 文本文件(或 ASCLL文件)(2)n-1 (指针)首地址P152习题一、 1、C 2、A 3、A 二 、 略 任务14中相关习题均摘自计算机等级考试上机部分,读者可自行查阅相关内容。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁