一、 选择题(20分,共20个小题)
1、C语言提供合法的数据类型关键字是( )
A)Double B)short C)integer D)Char
2、下列四组标识符中,全部是合法标识符的一组是______。
A) name, t3, x_y, _n3y B) function1, g, c10, k.c
2、对于下列各字符串,请选取择正确的标识符( )。
A)Boo B)for C)5abc D)I like C
3、下列不属于字符型常量的是( )
A)‘A’ B)“B” C)‘\n’ D)‘D’
4、 若有定义:int a = 7; float x = 2.5 , y = 4.7 ;
则表达式 x + a % 3 * (int) (x + y) % 2/4 的值是 。
A) 2.750000 B)
5、已知ch是字符型变量,下面不正确的赋值语句是 。
A)ch = 5 + 9; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6';
6、设int a,b,c;执行表达式a=b=1,a++,b+1,c=a+b--后,a,b和c的值分别是 ( b)
A)2,1,2 B)2,0,
7、在一个C程序中
A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现
C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置
8、(1) 组成C语言程序的是( )
A) 子程序 B) 过程
C) 函数 D) 主程序和子程序
9、如果x为float类型变量,则以下语句输出为(D)
x=213.82631;
printf(“%4.2\n”,x);
A) 宽度不够,不能输出 B)
10、对于条件表达式(m)?(a++):(a--),其中的表达式M等价于
A)M==0 B)M==
11、如下定义:
int x=10,y=3,Z;
则语句
print("%d\n",z=(x%y,x/y));
的输出结果是
A)1 B)
12、以下程序的输出结果是D
main()
{inta=1,b=2,c=3,d=4,m=0,n=0,t;
t=(m=a<b)||(n=c<d);
printf(“m=%d,n=%d”,m,n);}
A.m=0,n=0B.m=1,n=1
C.m=0,n=1D.m=1,n=0
13、下列程序的运行结果为A
main()
{inta=1,b=-1,z=0;
if(a<0)if(b<0)z=1;
elsez=-1;
if(b)--a;
else++a;
printf(“a=%d,z=%d”,a,z);}
A.a=0,z=0B.a=0,z=-1
C.a=2,z=-1D.a=2,z=1
14、有inti=5,j=8;则执行完以下语句后j的值为B
switch(i)
{case4:j++;
case5:j--;
case6:
case7:j++;
default:j-=2;}
A.3B
15、1.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为B
A. 20B
16、x=2.5,a=7,y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值为A
17、以下程序的运行结果为C
main()
{inta=32767;
printf("%d",a+2);}
A. 32767B
18、下面程序段的执行结果应该是C
intx,y;
x=y=0;
while(x<15)y++,x+=++y;
printf("%d,%d",x,y);
A. 20,7B.6,
19、设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为B
A. 0B
20、下面程序的运行结果为A
main()
{inti,j,a=0;
for(i=0;i<2;i++)
{for(j=0;j<4;j++)
{if(j%2)break;
a++;}
a++;}
printf("%d",a);}
A. 4B