第一章 单元测试

1、 问题:

C语言是一种(  )

选项:
A:机器语言
B:汇编语言
C:高级语言
D:低级语言
答案: 【高级语言

2、 问题:

下列各项中,不是C语言的特点是()。

选项:
A:语言简洁、紧凑,使用方便
B:数据类型丰富,可移植性好
C:能实现汇编语言的大部分功能
D:有较强的网络操作功能
答案: 【有较强的网络操作功能

3、 问题:

下列叙述错误的是(  )。

选项:
A:C程序中的每条语句都用一个分号作为结束符
B:C程序中的每条命令都用一个分号作为结束符
C:C程序中的变量必须先定义,后使用
D:C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写
答案: 【C程序中的每条命令都用一个分号作为结束符

4、 问题:

一个C程序的执行是从(  )。

选项:
A:本程序的main函数开始,到main函数结束
B:本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C:本程序文件的第一个函数开始,到本程序main函数结束
D:本程序的main函数开始,到本程序文件的最后一个函数结束
答案: 【本程序的main函数开始,到main函数结束

5、 问题:

以下叙述不正确的是(  )。

选项:
A:一个C源程序必须包含一个main函数
B:一个C源程序可由一个或多个函数组成
C:C程序的基本组成单位是函数
D:在C程序中,注释说明只能位于一条语句的后面
答案: 【在C程序中,注释说明只能位于一条语句的后面

第二章 单元测试

1、 问题:

已知定义整形变量a,b,c的值分别是2、3、4,运算表达式a*=16+(b++) – (++c)以后,a值为(  )

选项:
A:31
B:30
C:29
D:28
答案: 【28

2、 问题:

在C语言中,要求参加运算的数必须是整数的运算符是(  )。

选项:
A:++
B: 
C:! 
D:%
答案: 【%

3、 问题:

合法的c标识符是(  )。

选项:
A:5dm
B:a>b
C:h1
D:$s
答案: 【h1

4、 问题:

执行下列程序后,显示的结果是( )        

main ( )                                   

{ int a;                           

printf (“%d
”,(a=35,a4, a+5));}

选项:
A:65
B:20
C:15
D:10
答案: 【20

5、 问题:

执行下列程序中的输出语句后,x的值是( )。

main() 

{int x ;

 printf(“%d
”,(x=45,x2,x+20));}

选项:
A:20
B:40
C:60
D:80
答案: 【20

6、 问题:

表达式1/4+2.75的值是3。

选项:
A:对
B:错
答案: 【

7、 问题:

下列转义字符不正确的是( )。

选项:
A:'/'
B:’’
C:’+’
D:’-’
答案: 【’’

8、 问题:

对于int   n=3;执行n+=n-=n*n;后n的值是9。

选项:
A:对
B:错
答案: 【

9、 问题:

在C语言中8.9e1.2是不正确的实型常量。

选项:
A:对
B:错
答案: 【

10、 问题:

对任一变量一旦被指定为某一确定类型后,该变量在程序运行时所占存储空间的多少和所能参加的运算类型便已确定了。

选项:
A:对
B:错
答案: 【

11、 问题:

若x为整型变量、j为实型变量,当执行语句:x=(int)j;后,j也变为整型变量。

选项:
A:对
B:错
答案: 【

12、 问题:

“!”的优先级可以比“/”高。

选项:
A:对
B:错
答案: 【

13、 问题:

两个char 型数据相加,其结果为char型。

选项:
A:对
B:错
答案: 【

14、 问题:

若有 int i=10,j=2;则执行完i*=j+8;后ⅰ的值为28。

选项:
A:对
B:错
答案: 【

15、 问题:

在C程序中,%是只能用于整数运算的运算符。

选项:
A:对
B:错
答案: 【

16、 问题:

以下各数均不是合法的八进制数:256、03A2、-0127。

选项:
A:对
B:错
答案: 【

17、 问题:

C语言程序中,任何英语单词均可以作标识符。

选项:
A:对
B:错
答案: 【

18、 问题:

若有宏定义:#define  M(x,y,z)  xy+z,则宏引用M(2+3,4+5,6+7)通过宏展开后的表达式应为(2+3)(4+5)+6+7。

选项:
A:对
B:错
答案: 【

19、 问题:

C语言中不区分大小写英文字母。

选项:
A:对
B:错
答案: 【

20、 问题:

程序中的变量代表内存中的一个存储单元,它的值不可以随时修改。

选项:
A:对
B:错
答案: 【

21、 问题:

0x173是正确的十六进制常数。

选项:
A:对
B:错
答案: 【

22、 问题:

逻辑表达式-5&&!8的值为1。

选项:
A:对
B:错
答案: 【

23、 问题:

下面程序的输出是__

#include<stdio.h>

int main()

{ int k=11;

  printf("k=%d,k=%o,k=%x",k,k,k);

  return 1;

}

选项:
A:

k=11,k=12,k=11

B:

k=11,k=13,k=13

C:

k=11,k=013,k=0xb

D:

k=11,k=13,k=b

答案: 【

k=11,k=13,k=b

24、 问题:

在下列选项中,不正确的赋值语句是_.

选项:
A:

++t;

B:

n1=(n2=(n3=0));

C:

k=i=j;

D:

a=a+b=1;

答案: 【

a=a+b=1;

25、 问题:

下面程序的输出的是___.

      #include<stdio.h>

       void main()

      {int x=10,y=3;

         printf("%d",y=x/y);

}

选项:
A:

0

B:

1

C:

不确定的值

D:

3

答案: 【

3

26、 问题:

已知字母A的ASCII码为十进制的65,下面程序的输出是___.

      #include<stdio.h>

      void main()

      {char ch1,ch2;

         ch1='A'+'5'-'3';

         ch2='A'+'6'-'3';

         printf("%d,%c",ch1,ch2);

      }

选项:
A:

67,D

B:

B,C

C:

C,D

D:

不确定的值

答案: 【

67,D

27、 问题:

为表示关系x≥y≥z,应使用C语言表达式____.

选项:
A:

(x>=y)&&(y>=z)

B:

(x>=y)AND(y>=z)

C:

(x>=y>=z)

D:

(x>=y) & (y>=z)

答案: 【

(x>=y)&&(y>=z)

28、 问题:

下面程序的输出结果是_.

     #include<stdio.h>

      void  main()

     {

       int a=-1, b=4, k;

       k=(++a<=0)&&(b–<=0);

      printf("%d,%d,%d",k,a,b);

     }

选项:
A:

1,1,2

B:

1,0,3

C:

0,1,2

D:

0,0,3

答案: 【

0,0,3

29、 问题:

若有以下定义和语句:

    int a=010, b=0x10, c=10;

    printf("%d,%d,%d",a,b,c);

则输出结果是__.

选项:
A:

10,10,10

B:

8,16,10

C:

8,10,10

D:

8,8,10

答案: 【

8,16,10

30、 问题:

已知有double型变量x=2.5,y=4.7,整型变量a=7,

则表达式 x+a%3*(int)(x+y)%2/4 的值是__.

选项:
A:

2.4

B:

2.5

C:

2.75

D:

0

答案: 【

2.5

31、 问题:

假定w、x、y、z、m均为int型变量,有如下程序段:

  w=1;x=2;y=3;z=4;

   m=(w<x)?w:x;  m=(m<y)?m:y;  m=(m<z)?m:z;

则该程序段执行后,m的值是_.假定w、x、y、z、m均为int型变量,有如下程序段:

  w=1;x=2;y=3;z=4;

   m=(w<x)?w:x;  m=(m<y)?m:y;  m=(m<z)?m:z;

则该程序段执行后,m的值是_.

选项:
A:

4

B:

3

C:

2

D:

1

答案: 【

1

32、 问题:

有以下程序,其中k的初值为八进制数

  #include <stdio.h>

  main()

  {int k=011;

  printf("%d",k++);

  }

程序运行后的输出结果是__

选项:
A:

12

B:

11

C:

10

D:

9

答案: 【

9

33、 问题:

有以下程序

  #include  

  #define SUB(a) (a)-(a)

  main()

  { int a=2,b=3,c=5,d;

  d=SUB(a+b)*c;

  printf("%d",d);

  }

  程序运行后的输出结果是_

选项:
A:

0

B:

-12

C:

-20

D:

10

答案: 【

-20

34、 问题:

有以下定义语句,编译时会出现编译错误的是_

选项:
A:

char a=’a’;

B:

char a=’’;

C:

char a=’aa’;

D:

char a=’-’

答案: 【

char a=’aa’;

35、 问题:

以下选项中,不正确的 C 语言浮点型常量是_ 

选项:
A:

160

B:

0.12

C:

2e4.2

D:

0.0

答案: 【

2e4.2

36、 问题:

以下选项中,_是不正确的 C 语言字符型常量。

选项:
A:

'a'

B:

'A'

C:

"A"

D:

"a"

答案: 【

"a"

37、 问题:

以下合法的标识符是_

选项:
A:

int

B:

_a12

C:

3ce

D:

stu#

答案: 【

_a12

38、 问题:

已知int  x=023,表达式++x的值是_

选项:
A:

17

B:

18

C:

19

D:

20

答案: 【

20

39、 问题:

已知int  x=10,表达式x+=x-=x-x的值是_

选项:
A:

10

B:

40

C:

30

D:

20

答案: 【

20

40、 问题:

在 C 语言中,字符型数据在计算机内存中,以字符的_形式存储。

选项:
A:

原码

B:

反码

C:

ASCII 码

D:

BCD码

答案: 【

ASCII 码

41、 问题:

若变量x、i、j和k都是int型变量,则计算下面表达式后,x的值是_

x=(i=4,j=16,k=32)

选项:
A:

4

B:16
C:32
D:

52

答案: 【32

42、 问题:

下列不正确的转义字符是_

选项:
A:

''

B:'' '
C:'074'
D:

''''

答案: 【'074'

43、 问题:

image.png

选项:
A:a/b/ce3
B:3ae/b/c
C:3ae/bc
D:a
e/c/b3
答案: 【3
ae/bc】

44、 问题:

要为字符型变量 a赋初值,下列语句中哪一个是正确的_

选项:
A:

char a="3";

B:

char a=‘3’;

C:

char a=%;

D:

char a=*;

答案: 【

char a=‘3’;

45、 问题:

字符串"ABC"在内存占用的字节数是_

选项:
A:

3

B:

4

C:

6

D:

8

答案: 【

4

46、 问题:

若有说明语句:char c=':';则变量c在内存占用的字节数是_

选项:
A:

1

B:

2

C:

3

D:4
答案: 【

1

47、 问题:

C语言中,要求运算对象只能为整数的运算符是_

选项:
A:

%

B:

/

C:

>

D:

*

答案: 【

%

48、 问题:

若已定义 x 和 y为double 类型,则表达式 x=1,y=x+3/2 的值是_

选项:
A:

1

B:

2

C:

2.0

D:

2.5

答案: 【

2.0

49、 问题:

sizeof (double)的结果值是_

选项:
A:

8

B:

4

C:

2

D:

出错

答案: 【

8

50、 问题:

以下用户标识符中,合法的是_

选项:
A:

int

B:

nit

C:

123

D:

a+b

答案: 【

nit

51、 问题:

表达式18/4*sqrt(4.0)/8值的数据类型是_

选项:
A:int
B:float
C:double
D:

不确定

答案: 【double

52、 问题:

已知定义整形变量a,b,c的值分别是2、3、4,运算表达式a*=16+(b++) – (++c)以后,a值为(  )。

选项:
A:31
B:30
C:29
D:28
答案: 【28

53、 问题:

在C语言中,要求参加运算的数必须是整数的运算符是(  )。

选项:
A:++
B:!!
C:!
D:%
答案: 【%

54、 问题:

合法的c标识符是(  )。

选项:
A:5dm
B:a>b
C:h1
D:$s
答案: 【h1

55、 问题:

执行下列程序后,显示的结果是( )        

main ( )                                   

{ int a;                           

printf (“%d \n”,(a=35,a4, a+5));}

选项:
A:65
B:20
C:15
D:10
答案: 【20

56、 问题:

表达式1/4+2.75的值是3。(  )

选项:
A:对
B:错
答案: 【

57、 问题:

下列转义字符不正确的是( )。

选项:
A:’\’
B:’\’
C:’\053’
D:’\0’
答案: 【’\’

第三章 单元测试

1、 问题:

以下选项中不是C语句的是(  )

选项:
A:++t 
B:; 
C:k=i=j; 
D:{a/=b=1;b=a%2;}
答案: 【++t 

   

发表评论

电子邮件地址不会被公开。 必填项已用*标注