一、选择题
1. 若x、i、j和k都是int型变量,则执行下面表达式后x的值为 ( )
x= (i=4,j=16,k=32)
A) 4 B) 16 C) 32 D)52
2. 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 ( )
A) 7 B) 8 C) 6 D)2
3. 下面相个选项中,均是合法整型常量的选项是 ( )
A) 160 -0xffff 011
B) -0xcdf 01a 0xe
C) -01 986.012 0668
D) -0x48a 2e5 0x
4. 下面四个选项中,均是不合法的转义字符的选项是 ( )
A) ‘\”’ ‘\\’ ‘\xf’
B) ‘\1011’ ‘\’ ‘\a’
C) ‘\011’ ‘\f’ ‘\}’
D) ‘\abc’ ‘\101’‘xlf’
5. 若有代数式,则不正确的C语言表达式是 ( )
A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3
若已知各变量的类型说明如下:
int k,a,b;
unsigned long w=5;
double x=1.42;
则以下不符合C语言语法的表达式是()
k=x%(-3); x不是整型
w+=-2; 3
k=(a=2,b=3,a+b); 5
a+=a-=(b=4)*(a=3);
7. 已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=’A’+’6’-‘3’;后,c2中的值为( )
A) D B) 68 C) 不确定值 D)G
8. 若有定义:int a=7;float x=2.5,y=4.7; 则表达式 x+a%3*(int)(x+y); 的值是( )
A) 2.5 B) 2.75 C) 3.5 D) 9.5
9. sizeof(float)是一个 ( )
A) 一个双精度表达式 B)一个整型表达式
C)一种函数调用 D)一个不合法的表达式
10. 设变量a是整型,f是实型,i是双精度,则表达式10+’a’+i *f 值的数据类型为( )
A) int B) float C)double D)不确定
11. 表达式18/4*sqrt(4.0)/8 值的数据类型为 ( )
A) int B) float C)double D)不确定
12. 设C语言中,一个int型数据在内存中占2字节,则unsigned int型数据的取值范围为( )
A) 0-255 B) 0-32767 C)0-65535 D)0-2147483647
13. 若有以下定义,则执行表达式 y+=y-=m*=y后的y值是()
14 若a是int型变量,则表达式 (a=4 *5 ,a* 2),a+6; 的值为( )
15、以下选项中不合法的实型常量是( )
A、 2.607E-1 B、0.8103*12 C、-77.77 D、456e-2
16、下面正确的字符常量是( )
A、”c” B、 ‘\\’’ C、 ‘w’ D、 ‘’
17、c语言中运算对象必须是整型的运算符是( )
A、% B、 / C、 ! D、 **
18、若变量已正确定义并赋值,符合C语言语法的表达式是( )
A、 a=a+7; B、a=7+b+c,a++ C、 int(12.3%4) D、 a=a+7=c+b
19、 若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为( )。
A、1.4 B、1 C、2.0 D、2
20、设变量a是整型,f是实型,i是双精度,则表达式10+‘a’+i*f值的数据类型为( )
A、int B、float C、double D、不确定
21、 若有定义:int a=7;float x=2.5,y=4.7;;则表达式x+a%3*(int)(x+y)%2/4的值是( )。
A、2.500000 B、2.7500