当前位置:首页 > 谭浩强c程序设计参考答案
课后答案网,用心为你服务!www.khdaw.com C语言设计谭浩强第三版的课后习题答案(一)
1.5请参照本章例题,编写一个C程序,输出以下信息: ************ Very Goodj! ************ 解: main() {
printf(\ printf(\
printf(\ printf(\
printf(\ }
1.6编写一个程序,输入a b c三个值,输出其中最大者。 解:main() {int a,b,c,max;
printf(\请输入三个数a,b,c:\\n\
scanf(\ max=a; if(max
printf(\最大数为:%d\ }
第三章
3.3 请将下面各数用八进制数和十六进制数表示: (1)10 (2)32 (3)75 (4)-617
(5)-111 (6)2483 (7)-28654 (8)21003 解:十 八 十六 (10)=(12)=(a) (32)=(40)=20 (75)=(113)=4b
(-617)=(176627)=fd97 -111=177621=ff91 2483=4663=963
-28654=110022=9012 21003=51013=520b
3.5字符常量与字符串常量有什么区别?
解:字符常量是一个字符,用单引号括起来。字符串常量是由0个或若干个字符 而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\\0'. 3.6写出以下程序的运行结果:
课后答案网,用心为你服务!www.khdaw.com #include
char c1='a',c2='b',c3='c',c4='\\101',c5='\\116'; printf(\ printf(\ 解:程序的运行结果为: aabb cc abc A N
3.7将\译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母, 例如,字母\后面第4个字母是\用\代替\因此,\应译为\ 请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并 输出. main()
{char c1=\ c1+=4; c2+=4; c3+=4; c4+=4; c5+=4;
printf(\密码是%c%c%c%c%c\\n\ }
3.8例3.6能否改成如下: #include
int c1,c2;(原为 char c1,c2) c1=97; c2=98;
printf(\ printf(\ }
解:可以.因为在可输出的字符范围内,用整型和字符型作用相同. 3.9求下面算术表达式的值.
(1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)
(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5) 3.10写出下面程序的运行结果: #include
int i,j,m,n; i=8; j=10; m=++i;
课后答案网,用心为你服务!www.khdaw.com n=j++;
printf(\ }
解:结果: 9,11,9,10 第4章
4.4.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.60 y+z=-1.20 z+x=-2.40 u= 51274 n= 128765 c1='a' or 97(ASCII) c2='B' or 98(ASCII) 解: main() {
int a,b,c; long int u,n; float x,y,z; char c1,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(\
printf(\ printf(\
printf(\ printf(\
printf(\ printf(\ }
4.5请写出下面程序的输出结果. 结果: 57 5 7
67.856400,-789.123962 67.856400 ,-789.123962
67.86,-789.12,67.856400,-789.123962,67.856400,-789.123962 6.785640e+001,-7.89e+002 A,65,101,41
1234567,4553207,d687 65535,17777,ffff,-1 COMPUTER, COM
课后答案网,用心为你服务!www.khdaw.com 4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a', 问在键盘上如何输入? main() {
int a,b; float x,y; char c1,c2;
scanf(\ scanf(\ scanf(\ }
解:可按如下方式在键盘上输入: a=3 b=7
x=8.5 y=71.82 c1=A c2=a
说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的\回车\被第二 个scanf函数吸收,因此在第二\\三个scanf函数的双引号后设一个空格以抵消上行 入的\回车\如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一 初步概念即可,以后再进一步深入理解.
4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-3.75,z=57.8,请问 在键盘上如何输入数据?
scanf(\ 解: main() {
int a,b; float x,y,z; char c1,c2;
scanf(\ }
运行时输入: 10 20Aa1.5 -3.75 +1.5,67.8
注解:按]格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。%*f是用来禁止赋值的。在输入时,对应于%*f的地方,随意打入了一个数1.5,该值不会赋给任何变量。
3.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积,用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字.请编程. 解:main() {
float pi,h,r,l,s,sq,vq,vz; pi=3.1415926;
printf(\请输入圆半径r圆柱高h:\\n\ scanf(\ l=2*pi*r;
共分享92篇相关文档