当前位置:文档之家› 广技师C语言复习题4 练习(循环结构)(有答案)

广技师C语言复习题4 练习(循环结构)(有答案)

一、选择题
1. 设有如下程序段,则下面描述正确的是
int k=10;
while (k=0) k=k-1;
A.while 循环执行 10 次
B.循环是无限循环
C.循环体语句一次也不执行
D.循环体语句执行一次
2. 下面程序段的运行结果是
a=1; b=2; c=2;
while(a<b<c) { t=a; a=b; b=t; c--;}
}
A.z=x
B.z=1
C.z=0
D.z=y
A.i/result==1 B.i=result
C.i!=result
D.i==result
25. 以下正确的描述是

A.continue 语句的作用是结束整个循环的执行
B.只能在循环体内和 switch 语句体内使用 break 语句
C.在循坏体内使用 break 语句或 continue 语句的作用相同
pirntf(“%d, %d, %d”,a,b,c);
A.1,2,0
B.2,1,0
C.1,2,1
D.2,1,1
3. 下面程序段的运行结果是

int n=0;
while(n<=2) n++; printf(“%d”,n);
A.2 B.3 C.4
D.有语法错误
4. 设有如下程序段,则描述正确的是

t=0;
B.for( ; ; x++=i);
C.while(1) {x++;}
D.for(i=10; ; i--) sum+=i;
24. 下面程序的功能是求算式 xyz+yzz=532 中的 x,y,z 的值(其中 xyz 和 yzz 分别
表示一个三位数),请选择填空。
#include <stdio.h>
int main( )
do
{ sum=sum+
;
n=
;
}while(n);
printf(“sum=%d”,sum);
return 0;
}
A.n%10
B.(n%10)*(n%10)
C.n/10
D.(n/10)*(n/10)
A.n/1000 B.n/100 C.n/10 D.n%10
17. 下面程序的运行结果是

#include<stdio.h>
int main()
{int a,b,t;
scanf("%d%d",&a,&b);
while(
)
{if(a>b) {t=a;a=b;b=t;}
printf("%d,%d\n",a,b);
scanf("%d%d",&a,&b);
}
return 0;
}
A.!a=b
B.a!=b C.a==b D.a=b
11. 以下程序的功能是计算一个整数的各位数字之和,请选择填空。
#include<stdio.h>
int main()
{int n,m=0;
scanf("%d",&n);
for( ; n!=0; )
{m
;
n/=10;
}
printf("%d\n",m);
return 0;
}
A.+=n%10
B.=n%10
while (printf(“*”))
{t++; if(t<3) break;}
A.其中循环控制表达式与 0 等价
B.其中循环控制表达式与‘0’等价
C.其中循环控制表达式是不合法的
D.以上说法都不对
5. 下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对
等数时结束循环,请选择填空。
#include<stdio.h>
{ int x,y,z,I,result=532;
for(x=1;x<10;x++)
for(y=1;y<10;y++)
for(
; z<10; z++)
{ i=100*x+10*y+z+100*y+10*z+z;
if (
)
printf(“x=%d,y=%d,z=%d\n”,x,y,z);
}
return 0;
C.+=n
D.=n/10
13. 以下程序段

x=-1;
do
{ x=x*x;}while(!x);
A.是死循环 B.循环执行二次 C.循环执行一次 D.有语法错误
14. 以下描述中正确的是

A.while、do-while、for 循环中的循环体语句都至少被执行一次
B.do-while 循环中,while(表达式)后面的分号可以省略
int main()
{ int y=10;
do
{y--;}while(--y);
printf("%d\n",y--);
return 0;
}
A.-1
B.1
C.8
D.0
18.下面有关 for 循环的正确描述是

A.for 循环只能用于循环次数已经确定的情况
B.for 循环是先执行循环体语句,后判断表达式
D.or(表达式 1;表达式 3;表达式 3)
20. 若 i 为整型变量,则以下循环执行次数是

for (i=2; i= =0; ) printf(“%d”,i--);
A.无限次
B.0 次
C.1 次
D.2 次
21. 以下不是无限循环的语句为

A.for(y=0, x=1; x>++y; x=i++) i=x;
8. 下面程序的功能是在输入的一系列正整数中求出最大者,输入 0 结束循环,
请选择填空。
#include<stdio.h>
int main()
{int a,max=0;
scanf("%d",&a);
while(
)
{if(max<a) max=a;
scanf("%d",&a);
}
printf("%d\n",max);
return 0;
}
A.!a=0
B.a!=0 C.a= =0 D.a=0
9. 下面程序的运行结果是

#include<stdio.h>
int main()
{int num=0;
while(num<=2)
{num++;
printf("%d",num);
}
return 0;
}
A.1
B.12
C.123
D.1234
C.for 循环中,不能用 break 语句跳出循环体
D.for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
19. 对 for(表达式 1; ;表达式 3)可理解为

A.for(表达式 1;0;表达式 3)
B.for(表达式 1;1;表达式 3)
C.for(表达式 1;表达式 1;表达式 3)
C.while 循环体中,一定要有能使 while 后面表达式的值变为“假”的作
D.do-while 循环中,根据情况可以省略 while
15.下面程序的功能是计算正整数 2345 的各位数字的平方和,请填空。
#include <stdio.h>
int main( )
{ int n=2345,sum=0;
相关主题