- 28
- 0
- 约 10页
- 2016-10-09 发布于广东
- 举报
c语言部分习题考答案(4--7)
C语言部分习题参考答案
第4章 数据类型及表达式
4.1若a,b为整型变量,则下列表达式正确的是那些?
a=-21 正确 a=-0123 正确 以0开头的是八进制整型常量
a=0×12ab 错误十六进制整型常量以0x开头
b=a 正确 a必须先有确定的值
a=b+a=3 错误 a=b+a=3 等价于 a=(b+a)=3 等价于 a=((b+a)=3)
b=a=3 正确 b=a=3 等价于b=(a=3)
4.2 写出下列整型数据在内存中的存储形式。(用十六进制表示)15 0xf -32760 0x8008 127 0x7f
-32768 0x8000 -128 0xff80 3487 0xd9f
4.3下列那些是合法的单字符常量?
合法单个字符常量:(1)直接形式:例‘A’;(2)八进制 ‘\ddd’;(3) 十六进制 ‘\xhh’;(4)转义字符:以‘\’开头。
‘A’合法; ‘\084’不合法; 八进制中无“8”这个数码
‘\x34’,‘\n’合法; ‘\m’ 不合法; “0”不合法;“0”为字符串
‘ab’不合法;单引号内为两个字符 ‘\t’合法。
4.4设有如下的数据描述:int a=4,b=5;
float x=65.789;char c1=A,c2=\375;
a*100+b*10+2 = 4*100+5*10+2 = 452
c1*(a=x) = 65*(a=x) = 65*65 = 4225 其中:x为float,需转化为int,舍弃小数点,表达式的值等于a的值
b/a+(int)(x+a)%c1 = 1+(int)69.789%c1 = 1+69%65 = 1+4 =5
c1%c2 = 65%(-3) = 2
a+=a-=a%=a 等价于 a+=(a-=(a%=a))等价于 a+=(a-=0)等价于 a+=0 等价于 a=a+0 等价于 0 a为0,表达式为0
(a*=b,a*2),a+6 等价于 (a=a*b,a*2),a+6 等价于 (a=20,a*2),a+6 等价于 (a=20,40),a+6 等价于 40,a+6 等价于 表达式的值为26 ,a为20
4.5 结果为:9,11
4.6 (1)(x*x+y*y)/(x-y),v*t+1/2.0*a*t*t
(2) 3.14*R*R,3/4.0*3.14*R*R*R
(3) 2*(a+b),(a+b+c)/3.0,8*x+7*y+5*(12-x-y)
(4) sin(x+0.5)*sin(x+0.5)+3*cos(2*x+4)+atan(x)
4.8
赋值表达式的值:4;c=4,a=4;
赋值表达式的值:65533;d=65533,b=-3;
赋值表达式的值:‘.’;b=-3,c2=‘.’;
赋值表达式的值:‘’;c1=‘’,c2=‘z’;
赋值表达式的值:‘A’;c1=‘A’,x=65.789;
赋值表达式的值:65533,d=65533,c2=‘z’;
赋值表达式的值:1;a=1,b=-3。
第5章 顺序结构程序设计
5.2 D 5.3 B B 5.4 B 5.5 A
5.6以下程序的输出结果为:
i:dec=-4,oct=177774,hex=fffc,unsigned=65532
5.9正确的数据输入形式是:
a=3 b=7x=8.5 y=71.82c1=A c2=a↓
5-11 编程题:
(1)输入一个三位数,将它反向输出,例如输入258,输出852。
N-S流程图:
源程序参考:main()
{ int a,b,ge,shi,bai;
printf(Input a Three Bits Number:);
scanf(%d,a);
bai=a/100;
shi=a/10%10;
ge=a%10;
b=bai+shi*10+ge*100;
printf(Output:%d\n,b);
}
(2)根据圆柱体的高和半径,求圆柱体的表面积和体积。
N-S流程图参考:
源程序参考:#define PI 3.14
main()
{ float r,h,s,v;
printf(Input r,h=);
scanf(%f,%f,r,h);
s=2*PI*r*r+2*PI*r*h;
v=PI*r*r*h;
printf(S=%.2f,V=%.2f\n,s,v);
}
第6章 选择结构程序设计
6.1
原创力文档

文档评论(0)