mooc-程序设计入门-c语言-第一单元测验

1

单选(3分)

以下代码片段的输出是:D

 

int j=4;

for ( int i=j; i<=2*j; i++ ) {

switch ( i/j ) {

case 0:

case 1: printf(“*”); break;

case 2: printf(“#”);

}

}

  • A.****

  • B.*#

  • C.****##

  • D.****#

2

单选(3分)

下列程序段输出结果为:B

int x=1, y=012;

printf(“%d”,y*x++);

  • A.24

  • B.10

  • C.12

  • D.20

3

单选(3分)

下面程序段的输出结果是?A

int k;

while(k!=0) k=k-1;

printf(“%d”, k);

  • A.0

  • B.因为k没有初值,所以结果不确定

  • C.因为没有给k赋初值,因此程序不能通过编译

  • D.1

4

单选(3分)

以下哪个不是C语言的关键字?A

  • A.include

  • B.if

  • C.int

  • D.for

5

单选(3分)

for(表达式1;;表达式3)
可理解为 B

  • A.for(表达式1; 表达式1;表达式3)

  • B.for(表达式1;1;表达式3)

  • C.for(表达式1; 表达式3;表达式3)

  • D.for(表达式1;0;表达式3)

6

单选(3分)

对于以下代码:

int i,j=6;

以下哪句话是对的?B

  • A.不能通过编译

  • B.i不会被初始化,而j是6

  • C.i被初始为0,而j是6

  • D.i和j的初始值都是6

7

单选(3分)

对于以下代码:

char ch = -1;

printf("%d\n", ch);

 

输出结果是?B

  • A.255

  • B.-1

  • C.运行错误,因为%d和ch的类型不匹配

  • D.ASCII码表中255那个位置的字符

8

单选(3分)

对于以下代码:

int i; scanf("%d", &i); i %= 4;

执行后,i会有几种可能性?B

  • A.不好说

  • B.7

  • C.3

  • D.2

9

单选(3分)

对于以下代码:

int i=6;

do {

printf("%d", i--);

} while (0);

哪句话是对的 C

  • A.打印不出东西

  • B.因为while(0),无法编译

  • C.打印出6

  • D.打印出5

10

单选(3分)

以下哪个for语句是错误的?D

  • A.for (i=0; i<10, j<10; i++);

  • B.for (;;);

  • C.for (i=0; i<10; i--);

  • D.for (i=0;j=0; i<10; i++ ); 

11

填空(3分)

表达式ch =‘B’+‘8’-‘3’表示的字符是:G

 

12

填空(3分)

以下代码的输出是 _0____.

int x=0, y=0, z=0;

z = (x==1) && (y=2);

printf("%d ", y);

 

13

填空(3分)

以下代码段的结果是:10
int i=10;
long long t = sizeof(i++);
printf("%d", i);

 

14

填空(3分)

表达式(double)(10/4*4) 的结果是 8.000000

 

15

填空(3分)

以下代码的输出是 :9 1 20

int i,x,y; i=x=y=0; do { ++i; if ( i%2 ) x+=i, i++; y +=i++; } while ( i<=7 ); printf("%d %d %d", i, x, y);

 

你可能感兴趣的:(c语言)