c语言程序设计习题答案(2)

2018-12-12 23:03

{

int x=065; }

printf (“%d\\n”, - -x); /

10.下面程序的输出结果是 25,21,37 。

main( ) { int a, b, c; a=25; b=025; c=0x25 }

printf (“%d,%d,%d\\n”, a, b, c);

11.下面程序的输出结果是 48 。

main( ) {

int x=0110; }

printf (“%x\\n”, x);

12.下面程序的输出结果是 20 200.000000 。

main( ) { char c ; int n=100; float f=10; double x; x=f*=n/=(c=5); printf (“%d %f\\n”, n , x); }

13.写出下面程序的运行结果。(请用∪表示空格)

main() {

char c1=?a?,c2=?b?,c3=?c?,c4=?\\101?,c5=?\\116?; printf(“a%c∪b%c\\t c%c\\tabc\\n”,c1,c2,c3); printf(“\\t \\b%c∪%c\\n”,c4,c5); }

程序的运行结果是:aa∪bb∪∪∪cc∪∪∪∪∪∪abc A∪N 14.下面程序的运行结果是 9,11,9,10 。

main()

{int i, j, m, n; i=8; j=10; m=++i; n=j++; }

printf(“%d, %d, %d, %d\\n”, i, j, m, n);

15. 以下程序的运行结果是 11.50 。

#include

void main() { int i=5, j=9; float x=2.3, y=4.5;

printf(\ }

三.判断题 1.C语言中,字符常量可以用单引号或双引号括起来。 ( 错 ) 2.C语言中,字符常量只能包含一个常量(字符)。 ( 对) 3.在C语言中,字符串常量隐含处理成以‘\\0’结尾。 ( 对) 4.下面程序段的输出结果是9。 (错 ) int a=9;

printf(“%o\\n”,a); (注意:%o中的o是字母o,不是数字0)

5.C语言中,用户所定义的标识符允许使用关键字。 (错 ) 6.C语言中,用户所定义的标识符中,大、小字母代表不同标识。 ( 对 ) 7.C语言中,符号常量的值在程序运行过程中可以改变。 (错 ) 8.C语言中,不要求对程序中所用到的变量进行强制定义。 (错 ) 9.C语言中,一个整数如果其值在-323768~32767范围内,认为它是int 型,只能赋值给int型变量。 (错 ) 10.设一个C系统的float型有效数字是7位,则超过7位数的运算是不准确的。 (对) 四.计算题

1.求下面表达式的值。

1)x+a%3*(int)(x+y)%2/4 设x=2.5, a=7, y=4.7 第1步:(int)(x+y)=(int)(7.2)=7

第2步:a%3*7%2/4=7%3*7%2/4=1*7%2/4=1/4=0 第3步:x+0=x=2.5(计算机显示为2.500000) 2)(float)(a+b)/2+(int)x%(int)y 设a=2, b=3, x=3.5, y=2.5

第1步:(float)(a+b)/2=(float)(2+3)/2=(float)(5)/2=5.0/2=2.5 第2步:(int)x%(int)y=(int)(3.5)%(int)(2.5)=3%2=1 第3步:2.5+1=3.5(计算机显示为3.500000) 2.写出下面赋值表达式运算后a的值,设原来a=12,n=5。 1)a+=a a=a+a=12+12=24

2) a-=2 a=a-2=12-2=10 3) a*=2+3 a=a*(2+3)=12*5=60

4) a/=a+a a=a/(a+a)=12/24=0 注意a是整型 5)a%=(n%=2) 已知:n=5 a=0

6)a+=a-=a*=a 从右向左解:a=a*a=144;a=a-a=0;a=a+a=0

五.编程题

1.要将“China”译成密码,规律是:用原来的字母后面第4个字母代替原来的字母。例如,“A”用字母“E”来替代。因此,“China”应译为“Glmre”。编程:用赋初值的方法使c1.c2.c3.c4.c5这五个变量的值分别为‘C’、‘h’、‘i’、‘n’、‘a’,经过运算,这五个变量分别变为‘G’、‘l’、‘m’、‘r’、‘e’,并输出。 #include void main()

{char c1=’C’,c2=’h’,c3=’i’,c4=’n’,c5=’a’; c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;

printf(“password is %c%c%c%c%c\\n”,c1,c2,c3,c4,c5); }

运行结果:password is Glmre 也可以用循环和数组: #include void main() {

char c[]={“China”}; printf(“password is “); for(int i=0;i<=4,i++)

printf(“%c”,c[i]+=4); printf(“\\n”); }

2.请编程,要求用赋初值的方法使c1.c2这两个变量的值分别为97和98,然后分别按整型和字符型输出。 #include void main() {

char c1=97,c2=98;

printf(“%d, %d\\n”,c1,c2); printf(“%c,%c\\n”,c1,c2);

}

222

3.编写程序,从键盘输入三个单精度数a、b、c,计算总和、平均值、x=a+b+c的值,并计算x平方根的值。所有运行数据保留三位小数,第四位四舍五入。

#include

#include

void main()

{ double a, b, c, total, average, square, squareroot; printf(\请输入三个单精度实数:\ scanf(\ total = a + b + c;

average = total/3.0;

square = a*a + b*b + c*c; squareroot = sqrt(square);

printf(\三个数的和=%-15.3f,三个数的平均值=%-15.3f\\n\total, average);

printf(\三个数的平方和x=%.3f,x的平方根=%.3f\\n\square, squareroot); }

运行结果:

请输入三个单精度实数:1.23 4.56 7.89

三个数的和=13.680 ,三个数的平均值=4.560 三个数的平方和x=84.559,x的平方根=9.196

4.输入三角形的三个边长,计算并输出三角形的面积。

#include #include void main()

{ float a, b, c, k, area;

printf(\请输入三角形三条边的边长:\ scanf(\

if ((a+b <= c) || (a+c <= b) || (b+c <= a)) printf(\您输入的三条边无法构成三角形。\\n\ else {

k = (a+b+c)/2;

area = sqrt( k*(k-a)*(k-b)*(k-c) ); /* 函数sqrt(x)是求 x 的平方根 */ printf(\该三角形的面积是%6.2f\\n\

} }

5.输入两个长整型数,输出它们(整数除的)商和余数。 #include void main()

{ long a1, a2, a3, a4; printf(\请输入两个整数:\ scanf(\

a3 = a1/a2; a4 = a1¢;

printf(\两数进行整数除的商是%ld, 余数是%ld\\n\ }

运行结果:

请输入两个整数: 654321 789

两数进行整数除的商是829, 余数是240

6.输入两个整数,输出它们(实数除)的商,并输出商的第二位小数位(例如:15/8.0=1.875, 1.875的第二位小数位是7)。 #include

void main()

{ int a, b, c; float f;

printf(\请输入两个整数:\ scanf(\ f = 1.0*a/b ;

c = (int)(f*100);

printf(\两数进行实数除,商是%f, 商的第二位小数位是%d\\n\ }

运行结果:

请输入两个整数: 15 8

两数进行实数除,商是1.875000, 商的第二位小数位是7

7.输入一个(unsigned类型)无符号整数,分别输出它的低四位和高四位。

#include

void main()

{ unsigned u, high4, low4;

printf(\请输入一个无符号整数:\ scanf(\

low4 = (u & 0xf); /* u的低四位保留原值,其余位置0 */

high4 = (u & 0xf000)>>12; /* u的高四位保留原值,其余位置0,并右移12位 */

printf(\的十六进制是%x\\n\

printf(\十六进制表示%u的低四位是%x,高四位是%x\\n\ }

运行结果:

请输入一个无符号整数:54332 54332 的十六进制是d43c

十六进制表示54332的低四位是c,高四位是d


c语言程序设计习题答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生命安全与救援 网络公选课 答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: