习题二 C语言的基本数据类型与表达式 下载本文

习题二 C语言的基本数据类型与表达式

一.单项选择题

1. C语言中规定,不同类型的数据占用存储空间的长度是不同的。下列各组数据中满足占用存储空间从小到大顺序排列的是() A) short int , char , float , double B) char , float , int , double

C) int , unsigned char , long int , float D) char , int , float , double

2.C语言中能用八进制表示的数据类型是()

A) 字符型、整型 B) 整型、实型

C) 字符型、实型、双精度型 D) 字符型、整型、实型、双精度型

3. 下列属于合法的C语言中字符常数是() A)’\\97’ B)”A” C)’\\t’ D)”\\0”

4. C语言中字符型(char)数据在内存中是以( )形式存储的。 A)原码 B)补码 C)反码 D)ASCII码

5. 在C语言中,合法的长整型常数是()

A)0L B)4978234 C)05423761 D)0xa67b5ff

6. 若有以下变量定义,则结果为整型的表达式是()

int i ; char c ; float f ;

A)i+f B)i*c C)c+f D)i+c+f

7. 设 char ch; 以下正确的赋值语句是()在这里ch后只跟一个字节,与答案有冲突

A)ch=’123’; B)ch=’\\xef’; C) ch=’\\08’; D)ch=”\\”;

8. 若有以下定义和语句:

int u=010, v=0x10, w=10; printf(“%d,%d,%d\\n”,u,v,w); 刚输出结果是()

A)8,16,10 B)10,10,10 C)8,8,10 D)8,10,10

9. 若有以下定义和语句:

int y=10; y+=y-=y-y;

则y的值是()

A)10 B)20 C)30 D)40

10. 下面程序的输出结果是()在这里VC算出的结果是221,推算的结果是121

void main() { int a=1;

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

则输出结果是()

A)1 1 1 B)1 2 2 C)1 2 3 D) 1 2 1

11. 设float m=4.0,n=4.0; 使m为10.0的表达式是()

A)m+=n+2 B)m-=n*2.5 C)m*=n-6 D)m/=n+9

12. 下面程序的输出结果是()

void main()

{unsigned m=32768; Printf(“m=%d\\n”,m); }

A)m=32768 B)m=32767 C)m=-1 D)=-32767

13. 若有以下定义和语句:

int a=1,b=2,c=3,d=4;

printf(“%d\\n”,a

A)4 B)3 C)3 D)1

14. 设x、y、z均为int型变量,则执行以下语句后,x、y、z的值为() x=1;y=0;z=2; y++&&++z||++x;

A)2、1、3 B)2、0、3 C)2、1、3 D)2、1、2

15. 下面程序的运行结果是()

void main ()

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

Printf(“%d %d\\n’,(++x,y++),z+2); }

A)3 4 B)4 2 C)4 3 D)3 3

16. 若有以下定义和语句:

int a,b;

printf(“%d”,(a=2)&&(b=-2)); 则输出的结果是()

A)无输出 B)结果不确定 C)1 D)-1

17. 下列表达式中,不满足”当x的值为偶数时值为真,为奇数时值为假”的要求的是()

A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2)==0

18. 对于表达式(M)?(a++):(a--)来说,其中的表达式M等价于()

A)M==0 B)M==1 C)M!=0 M)!=1

19. 以下语句的输出结果是()

int a=2,b=3;

printf(a>b?”***a=%d”:”###b=%d”,a,b); A)输出结果格式错误 B)***a=2 C)###b=2 D)###b=3

20. 以下非法的转义字符是()

A)’\\b’ B)’0xf’ C)’\\037’ D)’\\”

?