C语言数据类型和运算符及表达式复习题 联系客服

发布时间 : 星期六 文章C语言数据类型和运算符及表达式复习题更新完毕开始阅读3510f651580216fc700afdf8

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*

28. 已有定义: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); 29. 以下合法的定义语句是( ) a) short _auto_=100-1;

b) double b=1+5e2.5; c) long do=1l; d) float 2_and=1e-3;

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

a) ++t b) ; c) k=i=j; d) {a/=b=1;b=a%2;} 31. 有定义语句:int a=5,b;,不能给b赋2的赋值语句是( ) a) b=a/2; b) b=b+2; c) b=2%a; d) b=5;b=2; 32. 设x和y均为int型变量,语句组x+=y;y=x-y;x-=y;的功能是( )

a) 把x和y从小到大排列 b) 把x和y从大到小排列 c) 无确定结果 d) 交换x和y中的值 33. 有定义语句: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;

34. 若有定义:int a=8,b=5,c;,执行语句:c=a/b+0.4;后,c的值是( )

a) 1.4 b) 1 c) 2.0 d) 2 35. 有以下程序:

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 36. 有以下程序:

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 37. 有以下程序:

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 38. 有以下程序:

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 39.有以下语句printf(“%d,%d,%u\\n”,016,16,-16);其输出结果是( )

a) 16,16,65520 b) 14,16,65520 c) 16,16,-16 d) 14,16,-16

40.若有定义语句:int b=0x17;printf(“%d”,b++);,其正确的输出结果是( )

a) 23 b) 24 c) 25 d) 22 41.有以下程序:

main() { int x=0xffff; printf(“%d\\n”,x--); }

程序运行的结果是:( )

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