C语言第四章顺序结构复习题 下载本文

内容发布更新时间 : 2024/7/6 7:14:54星期一 下面是文章的全部内容请认真阅读。

顺序结构程序设计复习题

一.选择题 1. 已有定义:int a,b; float x,y;,以下正确的赋值语句是:( ) a) a=1,b=2, b) y=(x%2)/10; c) x*=y+8; d) a+b=x; 2. 有以下程序:

main()

{ int y=1111;

printf(“y=m\\n”,y); printf(“y=%+06d\\n”,y); }

程序运行的结果是:( )

a) y= 1111 b) y= 1111 c) y=1111 d) y= 1111 y=001111 y=+01111 y=+01111 y=1111 3. 有以下程序:

main()

{ int y=456;

printf(“*y=%7o*\\n”,y); printf(“*y=%-7o*\\n”,y); printf(“*y=o*\\n”,y); }

程序运行的结果是:( )

a) *y= 710* b) *y= 456* *y=710 * *y=456 * *y=0000710* *y=0000456* c) *y=710* d) *y=456* *y=-710* *y=-456* *y=0710* *y=0456* 4. 有以下程序:

main()

{ float y=3.667;

printf(“*%f*\\n”,y); printf(“*%7.2f*\\n”,y); printf(“*%8.0f*\\n”,y); }

程序运行的结果是:( )

a) *3.667000* b) *3.667000* * 3.67* *3.667 *

* 4* *4.000000*

c) *3.667* d) *3.667000* *3.667000* *3.67*

*3.667000* *4.000000* 5. 已有定义:double a,b;,若要求按输入方式(此处*代表一个空格) **1.0**2.0<回车> 分别给a,b输入1,2,则能正确进行输入的语句是( ) a) scanf(“%f%f”,&a,&b);

b) scanf(“%5.1lf%5.1lf”,&a,&b); c) scanf(“%lf%lf”,&a,&b); d) scanf(“^^”,&a,&b); 6. 以下合法的定义语句是( ) a) short _auto_=100-1; b) double b=1+5e2.5; c) long do=1l;

d) float 2_and=1e-3;

7. 以下选项中不是C语句的是( )

a) ++t b) ; c) k=i=j; d) {a/=b=1;b=a%2;} 8. 有定义语句:int a=5,b;,不能给b赋2的赋值语句是( ) a) b=a/2; b) b=b+2; c) b=2%a; d) b=5;b=2;

9. 设x和y均为int型变量,语句组x+=y;y=x-y;x-=y;的功能是( ) a) 把x和y从小到大排列 b) 把x和y从大到小排列 c) 无确定结果 d) 交换x和y中的值

10. 有定义语句:long int a; int k;,能给a赋40000的正确语句是( ) a) a=20000+20000; b) a=4000*10; c) k=400;a=k*100; d) a=4000;a=a*10;

11. 若有定义:int a=8,b=5,c;,执行语句:c=a/b+0.4;后,c的值是( ) a) 1.4 b) 1 c) 2.0 d) 2 12. 有以下程序:

main()

{ int k=2,i=2,m; m=(k+=i*=k++);

printf(“y=%d,%d\\n”,m,i); }

程序运行的结果是:( )

a) 8,6 b) 8,3 c) 6,4 d) 7,4 13. 有以下程序:

main()

{ int y=3,x=3,z=1;

printf(“%d %d\\n”,(++x,y++),z+2); }

程序运行的结果是:( )

a) 3 4 b) 4 2 c) 4 3 d) 3 3 14. 有以下程序:

main()

{ int i; long l ; float f ; double d ; i=f=l=d=20/3;

printf(“%d %ld %3.1f %3.1f\\n”,i,l,f,d); }

程序运行的结果是:( )

a) 6 6 6.0 6.0 b) 6 6 6.7 6.7

c) 6 6 6.0 6.7 d) 6 6 6.7 6.0 15. 有以下程序:

main()

{ unsigned a=32768; int b ; b=a ;

printf(“b=%d\\n”,b); }

程序运行的结果是:( )

a) b=32768 b) b=32767 c) b=-32768 d) b=-1

16. 有以下语句printf(“%d,%d,%u\\n”,016,16,-16);其输出结果是( ) a) 16,16,65520 b) 14,16,65520 c) 16,16,-16 d) 14,16,-16

17. 若有定义语句:int b=0x17;printf(“%d”,b++);,其正确的输出结果是( ) a) 23 b) 24 c) 25 d) 22 18.有以下程序:

main()

{ int x=0xffff;

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

程序运行的结果是:( )

a) 32767 b) FFFE c) -1 d) -32768 二.填空题

1.已有定义:int x,y;,执行以下语句后的输出结果是______. x=11/3; y=5; printf(“%%d,%%%d\\n”,x,y);

2. 已有定义:int y;,执行以下语句后的输出结果是______. y=26; printf(“%d,%#o,%#x”,y,y,y); 3. 执行以下语句后的输出结果是_____.

printf(“7/8=%d”,7/8); printf(“%%%d”,7%2); 4. 以下程序的运行结果是_______. main()

{ float a;int b; b=a=24.5/5;

printf(“%f,%d”,a,b);

}

5. 以下程序的运行结果是_______. main()

{ float a;int b; a=b=24.5/5;

printf(“%f,%d”,a,b);

}

6. 以下程序的运行结果是_______. #include

main()