文档库

最新最全的文档下载
当前位置:文档库 > 数据类型、表达式及顺序结构练习题

数据类型、表达式及顺序结构练习题

一、选择题:

1、不合法的C语言整型常量是。

A. –012

B. 0x35

C. 123L

D. 8E2

2、不合法的C语言实型常量是。

A. E3

B. .123

C. –6.2E4

D. 5.0

3、不合法的C字符常量是。

A. ′2′

B. ′\101′

C. ′AB′

D. ′\n′

4、下列四组选项中,均是不合法的用户标识符的选项是。

A. W P_0 do

B. b-a goto int

C. float la0 _A

D. -123 abc TEMP

5、定义三个变量a、b、c,并分别赋初值为5。能实现该功能的语句是。

A. int a=b=c=5;

B. int a,b,c=5;

C. int a=5,b=5,c=5;

D. int a=5;b=5;c=5;

6、设有说明:char w;int x; float y;double z;则表达式w*x+z-y值的数据类型为。

A. float

B. char

C. int

D. double

7、以下选项中不能用作C程序合法常量的是()。

A. 1.234

B. '123'

C.123

D."\x7G"

8、以下选项中可用作C程序合法实数的是(D)

A. .1e0

B.3.0e0.2

C.E9

D.9.12E

9、下列标识符中,不合法的用户标识符为()。

A. Pad

B. CHAR

C. a_10

D. a≠b

10、以下选项中能表示合法常量的是(D)。

A.整数:1,200

B.实数:1.5E2.0

C.字符斜杠:‘\’

D.字符串:"\007"

11、以下选项中,能用作数据常量的是( B)。

A.o115

B. 0118

C.1.5e1.5

D. 115L

12、若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是(A)。

A.1

B.0

C.2

D.3

13、若有定义语句:int x=10;,则表达式x-=x+x的值为()

A.-20

B.-10

C.0

D.10

14、表达式:(int)((double)9/2)-(9)%2的值是()。

A.0

B.3

C.4

D.5

15.int x=5, y=14;则表达式x+7/y+0.6 值为()。

A.7.1

B.5.6

C.6.6

D.6.1

16、有以下程序执行后的输出结果是()。

main( )

{ int i,s=0;

for(i=1;i<10;i+=2) s+=i+1;

printf("%d\n",s);}

A.自然数1~9的累加和 B.自然数1~10的累加和

C.自然数1~9中的奇数之和 D.自然数1~10中的偶数之和

17、C语言中运算对象必需是整型的运算符是()。

A./ B. % C.* D.+

18、表达式3.6-5/2+1.2+5%2的值是()。

A.4.3 B. 4.8 C. 3.3 D.3.8

19、能正确表示逻辑关系:"a≥8或a≤5"的C语言表达式是()。

A.a>=8 or a<=5 B.a>=5 | a<=8 C.a>=8 && a<=5 D.a>=8 || a<=5 20、C语言中,数字029 是一个()。

A.不合法数字 B.十进制数 C.八进制数 D.十六进制数

21、设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()。

A.k++

B.k+=1

C.++k

D.k+1

22、以下选项中,合法的C语言数值常量是()。

A.028

B.'\12A'

C.'\177’

D. N

23、C语言中运算符优先级最低的是()。

A.++

B. =

C.-

D.&&

24、有以下程序运行时,输入的值在哪个范围才会有输出结果()。

main(){

int x; scanf("%d",&x);

if(x<=3) ;

else if(x!=10) printf("%d\n",x); }

A.不等于10的整数 B.大于3且不等于10的整数

C.大于3或等于10的整数 D.小于3的整数

25.以下选项中可用作C程序合法实数的是( )

A.1e0 B3.0e0.2 C.E9 D..12E

◆26.若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是( )

A.a=(b=4)=3;

B.a=b=c+1;

C.a=(b=4)+c;

D.a=1+(b=c=4);

◆27.左移运算:int a=4,c=a>>1;变量c的值是()。

A.2

B.8

C. 9

D. 0

28.在位运算中,操作数每右移一位,其结果相当于()。

A.操作数乘以2

B.操作数除以2

C. 操作数乘以4

D. 操作数除以2 29.表达式“12|012”的值是(C)。

A.1

B.0

C. 14

D. 12

30.以下程序的输出结果是()。

main()

{

int a,b;

a=4|3;

b=4&3;

printf(“%d %d”,a,b);

}

A.7 0

B.0 7

C. 1 1

D. 43 0

31.表达式0x13|0x17的值是()。

A.0x13

B.0x17

C. 0xE8

D. 0xC8

◆32.表达式19&23的值是()。

A.0x7

B.0x13

C. 0xf8

D. 0xec

二、填空题:

1、若有定义int m=5,y=2;,则计算表达式y+=y-=m*=y后的y值是。

2、若s是int型变量,且s=6,则表达式s%2+(s+1)%2的值为。

3、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为。

4、若a是int型变量,则计算表达式a=25/3%3后a的值为。

5、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为,n的值为。

6、若有定义:char c=‘\010’;则变量c中包含的字符个数为。

7、若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值为

三、程序阅读题:(写出程序运行结果)

1、以下程序的输出结果是。

#include

main()

{ int x=97; char y=’b’;

printf(“%c,%d”, x, y);

}

2、以下程序的输出结果是。

#include

main()

{ int x=6;

x+=x-=x*x;

printf(“x=%d\n”, x);

}

3、以下程序的输出结果是。

#include

main()

{ int i=1,j;

j= -i++;

printf(“%d\n”, j) ;

}

4、有以下程序,运行后的输出结果是。

main( )

{ char a='a',b;

printf("%c,",++a);

printf("%c\n",b=a++);}

5、以下程序的输出结果是。

main( )

{ int i=0,j=0,a=6;

if((++i>0)||(++j>0))

a++;

printf("%d,%d,%d",i,j,a); }

四、编程题:(顺序结构编程)

1、输入华氏温度,输出摄氏温度。C=5/9*(F-32)

/*由华氏温度转化为摄氏温度*/

2、输入底面半径r和高度h,计算并输出圆柱体的体积v。 v=πr2h(π取3.14,v计算结果保留到小数点后两位)

3、从键盘输入学生的三门考试成绩,计算并输出平均成绩。