1、 int a=5,b=7; double x=67.8564,y=-789.124; char c=a; long n=1234567; unsigned u=65535; printf(%d%dn,a,b); printf(%3d%3dn,a,b); printf(%f,%fn,x,y); printf(%-10f,%-10fn,x,y); printf(%8.2f,%8.2f,%.4f,%.4f,%3f,%3fn,x,y,x,y,x,y); printf(%e,%10.2en,x,y); printf(%c,%d,%o,%xn,n,n,n); printf(%ld,%lo,%xn,n,n,
2、n); printf(%u,%o,%x,%dn,u,u,u,u);printf(%s,%5.3sn,computer,computer); 4.6 int a,b; float x,y; char c1,c2; scanf(a=%d b=%d,a,b); scanf( %f %e,x,y); scanf( %c %c,c1,c2); 4.7 #includestdio.h float x,y,z; scanf(%5d%5d,a,b); scanf(%f%f%*f%f,x,y,z); scanf(%c%c,c1,c2); 4.8 #define pi 3.14 float r,h,l,s1,s2
3、,v1,v2;printf(请输入r,h的值: scanf(%f,%f,r,h); l=2*pi*r; s1=pi*r*r; s2=4*s1; v1=4/3*pi*r*r*r; v2=s1*h; printf(圆周长为:%.2fn,l); printf(圆面积为:%.2fn,s1); printf(圆球表面积为:%.2fn,s2); printf(圆球体积为:%.2fn,v1); printf(圆柱体积为:%.2fn,v2); 5.5 #include stdio.h printf(请输入x的值: scanf(%f,x); if(x1) y=x; else if(x=1x10) y=2*x-1
4、; y=3*x-11; printf(x与y的值分别为:n%f,%f,x,y); printf(n); 5.6 #include stdio.h float b; int a; printf(请输入该同学的成绩: scanf(%f,b); while (b0|b100) printf(输入有误,请重新输入: a= int(b/10); if(a6) a=5; switch(a) case 10: case 9: printf(该同学为等级:a);break; case 8:b); case 7:c); case 6:d); case 5:e); #include math.h int x,y,
5、m,n,i=1,j=0; printf(请给出一个不多于5位的正整数: scanf(%d,x); while(x=0|x=100000) printf(输入有误n请给出一个不多于5位的正整数:scanf(%d,x); for(n=0;n5;n+) y=int(x/pow(10,n);【篇二:c语言程序设计+谭浩强+第三版+课后习题答案】 * very good! 解: mian() printf(“*”); printf(“n”); printf(“very good!n”); printf(“*”); 1.6 编写一个程序,输入a、b、c三个值,输出其中最大值。 int a,b,c,max;
6、 printf(“请输入三个数a,b,c: scanf(“%d,%d,%d”,a,b,c); max=a; if(maxb) max=b; if(maxc) max=c; printf(“最大数为:“%d”,max); 第三章 3.6写出以下程序运行的结果。 main() char c1=a,c2=b,c3=c,c4=101,c5=116; printf(“a%cb%ctc%ctabcn”,c1,c2,c3); printf(“tb%c %c”,c4,c5); aabbccabc an 3.7 要将china译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母例如,字母a后面第4个字
7、母是ee代替a。因此,china应译为glmre。请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,c、h、i、n、a,经过运算,使c1、c2、c3、c4、c5分别变为g、l、m、r、e,并输出。 char c1=c,c2=h,c3=i,c4=n,c5=a;c1+=4; c2+=4; c3+=4; c4+=4; c5+=4; printf(密码是%c%c%c%c%cn,c1,c2,c3,c4,c5); 运行结果: 密码是glmre 3.9求下面算术表达式的值。 (1)x+a%3*(int)(x+y)%2/4 设x=2.5,a=7,y=4.7 (2)(float)(a+
8、b)/2+(int)x%(int)y 设a=2,b=3,x=3.5,y=2.5 (1)2.5 (2)3.5 3.10写出程序运行的结果。 int i,j,m,n; i=8; j=10; m=+i; n=j+; printf(“%d,%d,%d,%d”,i,j,m,n); 9,11,9,10 3.12 写出下面表达式运算后a的值,设原来a=12。设a和n都已定义为整型变量。 (1)a+=a(2) a-=2 (3) a*=2+3 (4)a/=a+a (5) a%=(n%=2),n的值等于5 (6)a+=a-=a*=a (1) 24 (2) 10 (3) 60(4) 0 (5) 0(6) 0 第四章
9、 44若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=a,c2=b。想得到以下输出格式和结果,请写出程序(包括定义变量类型和设计输出)。 a=_3_ _b=_4_ _c=_5 x=1.200000,y=2.400000,z=-3.600000 x+y=_3.600_ _y+z=-1.20_ _z+x=-2.40 int a=3,b=4,c=5;long int u=51274,n=128765; float x=1.2,y=2.4,z=3.6; char c1=a,c2=b; printf(a=%2d b=%2d c=%2dn,a,b,c
10、); printf(x=%f,y=%f,z=%fn,x,y,z); printf(x+y=%5.2f y+z=%5.2f z+x=%5.2fn,x+y,y+z,z+x); printf(u=%6ld n=%9ldn,u,n); printf(%s %s %d%sn,c1=a,or,c1,(ascii); printf(%s %s %d%sn,c2=a,or,c2,(ascii); int a,b;float x,y;char c1c2; scanf(a=%d_b=%d,a,b); scanf(_x=%f_y=%e,x,y); scanf(_c1=%c_c2=%c,c1,c2); a=3_b=7
11、 _x=8.5_y=71.82 _c1=a_c2=a float r,h,c1,sa,sb,va,vb; c1=2*3.14*r; sa=3.14*r*r; sb=4*sa; va=4*3.14*r*r*r/3; vb=sa*h; printf(c1=%.2fn,c1); printf(sa=%.2fnsb=%.2fnva=%.2fnvb=%.2fn,sa,sb,va,vb); 49输入一个华氏温度,要求输出摄氏温度。公式为 c=5(f-32)/9 输出要求有文字说明,取位2小数。 float f,c; scanf(%f,f); c=5*(f-32)/9; printf(c=%.2f,c);
12、410编程序,用getchar函数读入两个字符给c1、c2,然后分别用函数和函数输出这两个字符。并思考以下问题:(1)变量c1、c2应定义为字符型或整形?抑二者皆可?(2)要求输出c1和c2值的ascii码,应如何处理?用putchar函数还是printf函数?(3)整形变量与字符变量是否在任何情况下都可以互相代替?如: char c1,c2; 与 int c1,c2; 是否无条件的等价? char c1,c2; c1=getchar();c2=getchar(); putchar(c1);putchar(n);putchar(c2); printf(c1=%d c2=%dn,c1,c2);
13、printf(c1=%c c2=%cn,c1,c2); 第五章 5.1 什么是算术运算?什么是关系运算?什么是逻辑运算?略。 5.2 c语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?设有一个逻辑表达式,若其结果为“真”,则以1表示;若其结果为“假”,则以0表示。但是判断一个逻辑量的值时,以0代表“真”,以非0代表“假”。例如35的值为“真”,系统给出35的值为1。 5.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5。 (1) a+bcb=c (2) a|b+cb-c (3) !(ab)!c|1 (4) !(x=a)(y=b)0 (5) !(a+b)+c-1b+c/2
14、 (1) 0 (2) 1 (3) 1 (4) 0(5) 1 5.4 有3个整数a、b、c,由键盘输入,输出其中最大的数。 方法一 int a,b,c; printf(请输入3个整数:); scanf(%d,%d,%d,a,b,c); if(ab) if(bc) printf(max=%dn,c); else printf(max=%dn,b); else if(ac) printf(max=%dn,c); else printf(max=%dn,a); 方法二:使用条件表达式,可以使程序更加简明、清晰。 程序如下: int a,b,c,temp,max; temp=(ab)?a:b; max=
15、(tempc)?temp:c; printf(3个整数的最大数是%dn”,max); 5.5 有一函数: 写一程序,输入x值,输出y值。 int x,y; printf(输入x: y=x; printf(x=%3d, y=x=%dn,x,y);【篇三:谭浩强_c语言程序设计(第三版)课后习题答案】/p 4-8 #include iostream #define pi 3.1415 float r,h,rl,ra,ss,sv,cv; printf(输入圆的半径和圆柱的高nn); scanf(%f%f,r,h); rl=2*pi*r; ra=pi*r*r; ss=4*pi*r*r; sv=4*pi
16、*r*r*r/3; cv=ra*h;%fnn圆面积为:%fnn圆球表面积为:%fnn圆球体积为:%fnn圆柱体积为:%fnn,rl,ra,ss,sv,cv); 4-9 float f,c; printf(输入一个华氏温度nn); printf(摄氏温度为:%.2fnn,c); 5-4void main() int a,b,c,max; printf(输入三个整数a,b,cnn); scanf(%d%d%d,a,b,c); if(ab) max=a; else max=b; if(maxc) max=c; printf(最大的数为:%dnn,max); 5-5 printf(输入xnn); if
17、(x1) y=x; else if(x10) y=2*x-1; else y=3*x-11; printf(y=%fnn,y); 5-6 float m; int n; printf(输入成绩nn); scanf(%f,m); n=m/10; switch(n) case 0: case 1: case 2: case 3: case 4:printf(enn);printf(dnn);printf(cnn);printf(bnn);printf(ann); 5-7 int a,b,c,i,j,n; printf(输入五位正整数nn); scanf(%d,a); printf(nn); c=a
18、; for(i=1;i+) b=c%10; c=c/10; printf(%d,b); if(c=0) printf(正整数为%d位数nn,i);for(j=i-1;j=0;j-) n=pow(10,j); b=c/n; c=c%n; printf(%dn,b); 5-8 if语句: int i; float bonus; printf(输入当月利润inn); scanf(%d,i); if(i=100000) bonus=i/10; else if(i=200000) bonus=10000+(i-100000)*7.5/100; else if(i=400000) bonus=10000+
19、7500+(i-200000)*5/100; else if(i=600000) bonus=10000+7500+10000+(i-400000)*3/100; else if(i=1000000) bonus=10000+7500+10000+6000+(i-600000)*1.5/100; else bonus=10000+7500+10000+6000+6000+(i-1000000)*1/100; printf(应发奖金数为:%fnn,bonus); switch语句: int i,n;if(i1000000) n=10; else n=i/100000;bonus=i/10;bon
20、us=10000+(i-100000)*7.5/100;bonus=10000+7500+(i-200000)*5/100;bonus=10000+7500+10000+(i-400000)*3/100;bonus=10000+7500+10000+6000+(i-600000)*1.5/100;bonus=10000+7500+10000+6000+6000+(i-1000000)*1/100; 5-9 int a,b,c,d,temp,min;contribution n. 贡献 printf(输入四个数a,b,c,dnn); scanf(%d%d%d%d,a,b,c,d);effect n. 结果;效力 if(ab)n. 喷泉;源泉 update vt. 更新;使现代化 temp=a;reaction n. 反应;回应 a=b;hover vi. 盘旋 b=temp;n.同伴;同志;伙伴 volcanology n. 火山学 if(ac)folk adj. 民间的 blister n. 水泡 temp=a; a=c; c=temp;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1