C语言基本数据类型及运算题库

  • 格式:doc
  • 大小:20.50 KB
  • 文档页数:8

第 1 页 共 8 页 C语言基本数据类型及运算题库

基本数据类型及运算

一、选择题

1. 若以下选项中的变量已正确定义,则正确的赋值语句是 。

A) x1=26.8%3; B) 1+2=x2; C) x3=0x12;

D) x4=1+2=3; 答案:C

2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是 。

A) x=x*100+0.5/100.0 B)

x=(x*100+0.5)/100.0 C) x=(int)(x*100+0.5)/100.0

D) x=(x/100+0.5)*100.0 答案:C

3. 下列C语言中运算对象必须是整型的运算符是 。

A) %= B) / C) = D) *= 答案:A

4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是 。

A) 0 B) 0.5 C) 1 D) 2 答案:A

5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y;

x-=y; 的功能是 。 第 2 页 共 8 页 A) 把x和y按从大到小排列 B) 把x和y按从小到大排列 C) 无确定结果 D) 交换x和y中的值

答案:D

6. 下列变量定义中合法的是 。

A)short_a=1-.le-1; B)double b=1+5e2.5;

C)long do=0xfdaL; D)float 2_and=1-e-3; 答案:A

7. 以下4个选项中,不能被看作是一条语句的是 。

A) {;} B) a=0,b=0,c=0;

C) if (a>0); D) if

(b==0)m=1;n=2; 答案:D

8. 设x=1,y=-1,下列表达式中解为8的是 。

A)x&y B)~x│x C)x^x D)xk)&&(c=i,j,k)后,c值是 。

A)0 B)1 C)2 D)3 答案:D

14. 下列程序的运行结果是 。

# include “stdio.h” void main( ) { int i=23;

do{++i;} while(i);

printf(“%d”,i); }

A)23 B)24 C)死循环 D)无任何结果 答案:C

15.设int a=3,b=4,c=5;,下列表达式的值不为1的是 。 第 3 页 共 8 页 A)a+b>c&&b==c B)a||b+c&&b-c

C)!(a>b)&&!c||1 D)!(a+b)+c-1&&b+c/2 答案:A

16.下列不合法的常量是: 。

(1)’?’

(2)’abc’

(3)”Turbo c”

(4)’\\0x32’

(5)’\\123’ (6)’’’’

(7)”△” (8)’△’

(9)”\\\\\\”

(10)’’a’’’ (11)’\\\\’ (12)’\\0123’(13)’\\xaf’

(14)’王’

(15)”李为民”

(16)”\\xaif” 答案:(2),(12),(14),(16)

17. 下列运算符中,结合方向为自左向右的是( )。

(A)?:

(B), (C)+ =

(D)+ + 答案:(B)

18. 若有float x;则sizeof (x)和sizeof (float)两种描述( )。

(A)都正确 第 4 页 共 8 页 (B)都不正确

(C)前者正确 (D)后者正确 答案:(A)

19. 有整型变量x,单精度变量y=5.5,表达式x=(float)(y*3+((int)y)%4)执行后,x的值为( )。

(A)17

(B)17.500000

(C)17.5 (D)16 答案:(A)

20. 若给定条件表达式(M)?(a++):(a--),则其中表达式(M)

A.和(M==0)等价 B.和(M==1)等价 C.和(M!=0)等价 D.和(M!=1)等价 答案:C

21. 已知float x=1,y;则y=++x*++x的结果是 。

A.y=9 B.y=6 C.y=1 D.表达式是错误的 答案:D

22. 以下程序的输出结果是 。

short i=65535; printf (\

A.65535 B.0 C.语法错误,无输出结果

D.-1 答案:D

23.有变量说明语句int a,b ,c;,顺序执行下面语句:

a=b=c=1;

++a||++b&&++c; 第 5 页 共 8 页 那么,变量b的值应是( )

A.2 B.1 C.0 D.3 答案:B

24. 有变量说明int a=3;,则表达式a1的运算结果和a的值应该是( )

A.0和2 B.0和3 C.1和2 D.1和3 答案:B

25. 以下程序的输出为 。

#include void main( ) {

double x=213.82631; printf(\}

A.213.82 B.21.38e+01 C.2.14e+02

D.-2.14e2 答案:C

26. 下列关于单目运算符+ +、- -的叙述中正确的是 。

A)它们的运算对象可以是任何变量和常量

B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量 C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量 D)它们的运算对象可以是char型变量、int型变量和float型变量 答案:D

27. 有以下程序:

#include void main ( ) {

char a,b,c,*d; a='\\';b='\\xbc';

c='\\0xab';d=\

printf (\} 第 6 页 共 8 页 编译时出现错误,以下叙述中正确的是 。 A)程序中只有“a='\\';”语句不正确 B)“b='\\xbc';”语句不正确

C)“d=\”语句不正确 D)“a='\\';”和“c='\\0xab';”语句都不正确 答案:D

28. 有以下程序:

#include void main ( ) {

int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a0);

D)if (b= =0)m=1;n=2; 答案:D

31. 假定有以下变量定义,则能使值为3的表达式是 。

int k=7,x=12;

A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5

D)(x%=k)-(k%=5) 答案:D

32. 以下程序的输出结果是 。

#include void main( ) {

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

printf (\ printf (\}

A)x/y&z=0 B)x/y&z=1 x^y&~z =0

x^y&~z =0 C)s=x/y&z=0 D)x/y&z=1 s=x^y&~z =1

x^y&~z =1

答案:D

33. 设有“int x=11;”则表达式(x++*1/3)的值是 。 第 7 页 共 8 页 A)3 B)4 C)11 D)12 答案:A

34. 若有语句scanf(”%d %c%f”,&a,&b,&c),假设输入序列为2223a123o.12,a、b、c的值为 。

A)无值 B)2223,a,123o.12 C)2223,a,无 D)2223,a,123 答案:D

35. 下列描述中,正确的一条是 。

A)C语言的整型变量可以分为int 、short、long、unsigned int、unsigned short、unsigned long等几种类型,因此整型常量也可以分为这几种类型

B)C语言的字符数据与整型数据可以互相赋值 C)若对字符型变量的定义为:“char c;”可使用语句c=“a”对变量c赋值

D)已知x为float型,执行语句(int)x后,x为int型 答案:B

36. 设“int x=1,y=1;”,表达式(!x‖y--)的值是 。

A)0 B)1 C)2 D)-1 答案:B

37. 执行x=5>1+2&&2||2*4c&&b= =c&&a||b+c&&b+c的值为 。

A)5 B)8 C)0 D)1 答案:D

40. 执行语句scanf (“%c%c%c”,&c1,&c2,&c3),输入abc时,变量c1、c2、c3的值分别为 。 第 8 页 共 8 页 A)'a', 'b', 'c' B)'a','b', ''

C)'a', '', 'b' D)'a','','c' 答案:A

41. 若有以下定义:

int a=10,b=9,c=8;