type
status
date
slug
summary
tags
category
icon
password

一.单选题(total25 questions,100.0mark)

1

【Single Choice】设有以下程序main( ){ int x=0,s=0;  while(!x!=0) {x++; s=s+x; }  printf("%d",s);}则该程序的运行情况是( ).
A、运行程序后输出0 • B、运行程序后输出1 • C、程序中的控制表达式是非法的 • D、程序执行无限次
My Answer:B:
运行程序后输出1
;

2

【Single Choice】有以下程序:#include "stdio.h"main( ){ int c;  while((c=getchar( ))!='\n')    { switch(c-'2')      { case 0:        case 1:putchar(c+4);        case 2:putchar(c+4);break;        case 3:putchar(c+3);        case 4:putchar(c+3);break; }      }   printf("\n"); }程序运行时输入:2743后回车,程序的输出结果是( ).
A、66877 • B、668966 • C、6677877 • D、6688766
My Answer:A:
66877
;

3

【Single Choice】以下while循环中,循环体执行的次数是( ).k=0;while(k) k=10;
A、10次 • B、无限次 • C、1次 • D、一次也不执行
My Answer:D:
一次也不执行
;

4

【Single Choice】以下程序的输出结果是( ).main( ){ int a,i;a=0;  for(i=1;i<5;i++)   { switch(i)     { case 0:       case 3:a+=2;       case 1:       case 2:a+=3;       default:a+=5;       }    }  printf("%d\n",a); }
A、31 • B、13 • C、10 • D、20
My Answer:A:
31
;

5

【Single Choice】下列程序的输出结果是( ).main( ){ int i,a=0,b=0;  for(i=1;i<10;i++)    if(i%2==0)   a++;   else  b++;     printf("a=%d,b=%d",a,b); }
A、a=4,b=4 • B、a=4,b=5 • C、a=5,b=4 • D、a=5,b=5
My Answer:B:
a=4,b=5
;

6

【Single Choice】若变量已正确定义,则下面程序段的输出结果是( ).i=0;do printf("%d,",i);while(i);printf("%d\n",i);
A、0,0 • B、0,1 • C、1,1 • D、程序进入无限循环
My Answer:A:
0,0
;

7

【Single Choice】现有如下程序main( ){ int k[30]={12,324,45,6,768,98,21,34,453,456};  int count=0,i=0;  while(k[i])   { if(k[i]%2==0‖k[i]%5==0) count++;    i++;    }  printf("%d,%d\n",count,i);}则程序的输出结果为( ).
A、7,8 • B、8,8 • C、7,10 • D、8,10
My Answer:D:
8,10
;

8

【Single Choice】有如下程序:main( ){ int n=9;  while(n>6)  {n--; printf("%d",n);}}该程序的输出结果是( ).
A、987 • B、876 • C、8765 • D、9876
My Answer:B:
876
;

9

【Single Choice】已知:int t=0;while (t=1){...}则以下叙述正确的是( ).
A、循环控制表达式的值为0 • B、循环控制表达式的值为1 • C、循环控制表达式不合法 • D、以上说法都不对
My Answer:B:
循环控制表达式的值为1
;

10

【Single Choice】设有程序段 int k=10; while(k=0)k=k-1;下面描述中正确的是( ).
A、while循环执行10次 • B、循环是无限循环 • C、循环体语句一次也不执行 • D、循环体语句执行一次
My Answer:A:
while循环执行10次
;

11

【Single Choice】下列说法中错误的是( ).
A、只能在循环体内使用break语句 • B、在循环体内使用break语句可以使流程跳出本层循环体,从而提前结束本层循环 • C、在while和do…while循环中,continue语句并没有使整个循环终止 • D、continue的作用是结束本次循环,即跳过本次循环体中尚未执行的语句,接着再一次进行循环判断
My Answer:B:
在循环体内使用break语句可以使流程跳出本层循环体,从而提前结束本层循环
;

12

【Single Choice】执行下面的程序后,a的值为( ).main( ){ int a,b;  for(a=1,b=1;a<=100;a++)  { if(b>=20)break;    if(b%3==1)       b+=3;     else  b-=5; } }
A、7 • B、8 • C、9 • D、10
My Answer:B:
8
;

13

【Single Choice】以下程序的输出结果是( ).main( ){  int i;   for(i=0;i<3;i++)   switch(i)   { case 0: printf("%d",i);     case 2: printf("%d",i);     default: printf("%d",i);    }}
A、022111 • B、021021 • C、000122 • D、012
My Answer:C:
000122
;

14

【Single Choice】有以下程序main( ){ int y=9;  for( ; y>0;y--)    if(y%3==0)  { y--; printf("%d",y); } }程序的运行结果是( ).
A、741 • B、963 • C、852 • D、875421
My Answer:C:
852
;

15

【Single Choice】执行下列程序后,输出的结果是( ).main( ){ int x=9;  do   { printf("%d",x); x--;}while(!x);}
A、8 • B、9 • C、陷入死循环 • D、不输出任何内容
My Answer:B:
9
;

16

【Single Choice】以下描述中正确的是( ).
A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句 • B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 • C、在do-while语句中,是先执行循环体语句,再进行循环条件判断 • D、do-while循环中,根据情况可以省略while
My Answer:A:
由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
;

17

【Single Choice】以下程序段( ). x=-1; do{    x=x*x; printf("%d",x);    }while(!x);
A、是死循环 • B、循环执行二次 • C、循环执行一次 • D、有语法错误
My Answer:C:
循环执行一次
;

18

【Single Choice】有以下程序:main( ){ int  x=0,y=0,i;  for (i=1;;++i)   { if (i%2==0) x++;  else  if (i%5==0) { y++;break;} }  printf ("%d,%d",x,y); }程序的输出结果是( ).
A、2,1 • B、2,2 • C、2,5 • D、5,2
My Answer:A:
2,1
;

19

【Single Choice】下面的表达式while(!x)中的表达式 !x 与下面条件( )等价.
A、x==0 • B、x==1 • C、x==0||x==1 • D、x!=0
My Answer:A:
x==0
;

20

【Single Choice】以下叙述正确的是( ).
A、continue语句的作用是结束整个循环的执行 • B、只能在循环体内和switch语句体内使用break语句 • C、在循环体内使用break语句或continue语句的作用相同 • D、从多层循环嵌套中退出时,只能使用goto语句
My Answer:A:
continue语句的作用是结束整个循环的执行
;

21

【Single Choice】若有如下语句   int x=3;   do { x=x-2; printf("%d\n",x); x--;}while(!x);则上面程序段( ).
A、输出的是1 • B、输出的是1和-2 • C、输出的是3和0 • D、是死循环
My Answer:B:
输出的是1和-2
;

22

【Single Choice】以下程序的运行结果为( ).main( ){ int m,n;  for(m=0,n=10;m<n;m+=3,n--);  printf("%d,%d\n",m,n);}
A、6,7 • B、7,6 • C、9,7 • D、7,9
My Answer:C:
9,7
;

23

【Single Choice】有以下程序:main( ){ int i,s=1;  for (i=1;i<50;i++)   if(!(i%5)&&!(i%3)) s+=i;  printf("%d\n",s); }程序的输出结果是( ).
A、409 • B、277 • C、1 • D、91
My Answer:D:
91
;

24

【Single Choice】有以下程序main( ){ int i,j,m=55;  for(i=1;i<=3;i++)    for(j=3;j<=i;j++) m=m%j;  printf("%d\n",m);}程序的运行结果是( ).
A、0 • B、1 • C、2 • D、3
My Answer:B:
1
;

25

【Single Choice】有以下程序
main( )
{ int k=5,n=0;
do
{
switch(k)
{ case 1: case 3:n+=1;k--;break;
default: n=0;k--;
case 2: case 4:n+=2;k--;break;
}
printf("%d",n);
}while(k>0 && n<5);
}
A、235 • B、0235 • C、02356 • D、2356
My Answer:A
C语言程序设计 测验题五C语言程序设计 测验题三
Loading...