版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、单选题
1、有以下程序段:
intk=2;
while(k=0){printf("%d",k);k-;}
则下面描述中正确的是()。
A循环体语句一次也不执行
B.while循环执行10次
C循环是无限循环
D.循环体语句执行一次
正确答案:A
2、下面程序段执行后的输出结果是()。
inta=l,b=2,c=3,t;
while(a<b<c){
t=a;a=b;b=t;c-;
)
printf("%d,%d,%d",a,b,c);
A.2,1,0
B.2,1,1
C.1,2,0
D.1,2,1
正确答案:D
3、下面程序段执行后的输出结果是()o
#include<stdio.h>
intmain()
{intx=0,y=5,z=3;
while(z->0&&++x<5)y=y-l;
printf("%d,%d,%d",x,y,z);
return0;
}
A.4,3,-1
B.5,-2,-5
C.3,2,0
D.3,2,-1
正确答案:D
4、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选
择()填入到【】中。
#include<stdio.h>
intmain()
{intm=0,n=0;charc;
while(([])!='\n'){
if(c>='A'&&c<=Z)m++;
if(c>='a'&&c<='z')n++;
)
return0;
)
A.scanf("%c",&c)
B.c==getchar()
C.getchar()
D.c=getchar()
正确答案:D
5、语句while(!E){……};中的表达式!E等价于()。
A.E!=0
B.E!=l
C.E==1
D.E==0
正确答案:D
6、以下程序段()。
x=-l;
do{
x=x*x;
}while(!x);
A循环执行1次
B.是死循环
C.循环执行2次
D.有语法错误
正确答案:A
7、以下叙述正确的是().
A.do-while语句构成的循环不能用其它语句构成的循环来代替
B.用do-while语句构成的循环,在while后的表达式为非零时结束循环
C.用do-while语句构成的循环,在while后的表达式为零时结束循环
D.do-while语句构成的循环只能用break语句退出
正确答案:c
8、有以下程序段:
intn=0,p;
do{
scanf("%d",&p);
n++;
}while(p!=12345&&n<3);
此处do-while循环的结束条件是()。
A.p的值不等于12345或者n的值小于3
B.p的值等于12345或者n的值大于等于3
C.p的值等于12345并且n的值大于等于3
D.p的值不等于12345并且n的值小于3
正确答案:B
9、已知:inti=5,下歹(Jdo-while循环语句的循环次数为()。
do{
printf("%d\n",i-);
i--;
}while(i!=0);
A.l
B.O
C.无限
D.5
正确答案:C
10、下面程序段()。
x=3;
do
{
y=x-;
if(!y){
printf("%d",x);
continue;
)
printf。'#");
}while(x>=l&&x<=2);
A.含有不合法的控制表达式B将输出##
C.将输出###
D.是死循环
正确答案:C
11、下面程序执行后的输出结果是()»
#include<stdio.h>
intmain(){
charc='A';
intk=0;
do(
switch(c++){
case'A':k++;
break;
case
case'C':k+=2;
break;
case'D':k%=2;
continue;
case'E':k*=10;
break;
default:k/=3;
)
k++;
}while(c<'G');
printf("k=%d",k);
return0;
)
A.k=0
B.k=4
C.k=3
D.k=2
正确答案:B
12、下面for循环语句()o
inti,k;
for(i=0,k=-l;k=l;i++,k++)printf("***");
A.是无限循环
B.只循环一次
C.判断循环结束的条件非法
D.一次切循环
正确答案:A
13、下面程序执行后的输出结果是()。
#include<stdio.h>
intmain()
{intx=9;
for(;x>0;x-){
if(x%3==0){
printf("%d",-x);
continue;
)
}
return0;
)
A.963
B.852
C.741
D.875421
正确答案:B
14、下面程序段的循环次数是()。
for(i=2;i==0;)printf("%d",i-);
A.O次
B.2次
C.无限次
D.l次
正确答案:A
15、下面程序执行后的输出结果是()。
#include<stdio.h>
intmain()
{inti,sum=O;
for(i=l;i<6;i++)sum+=i;
printf("%d",sum);
return0;
)
A.14
B.15
C.不确定
D.O
正确答案:B
16、若有以下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大
于0)
s=a;
for(b=l;b<=c;b++)s=s+l;
则与上述程序段功能等价的赋值语句是()。
A.s=a+b;
B.s=b+c;
C.s=s+c;
D.s=a+c;
正确答案:D
17、下面程序执行后的输出结果是()。
#include<stdio.h>
intmain()
{inta=O,i;
for(i=l;i<5;i++)
switch(i){
case0:
case3:a+=2;
case1:
case2:a+=3;
default:a+=5;
}
printf("%d",a);
return0;
)
A.10
B.20
C.13
D.31
正确答案:D
18、若变量已正确定义,不能完成求5!的程序段是()。
A.i=l;p=l;while(i<=5){p*=i;i++;}
B.for(i=l,p=l;i<=5;i++)p*=i;
C.for(i=l;i<=5;i++){p=l;p*=i;}
D.i=l;p=l;do{p*=i;i++;}while(i<=5);
正确答案:C
19、下面程序段中,()与其他三个程序段的作用不同。
A.intk,s=O;
for(k=l;k<=100;s+=++k);
printf("%d",s);
B.k=l;s=0;
do
s+=k;
while(++k<=100);
printf("%d",s);
C.k=l;s=0;
Repeat:
s+=k;
if(++k<=100)
gotoRepeat;
printf("%d",s);
D.k=l;s=0;
while(1){
s+=k;
k=k+l;
if(k>100)break;
}
printf("%d",s);
正确答案:A
20、以下不是死循环的程序段是()。
A.intk=0;
do{
++k;
}while(k>=0);
B.ints=36;
while(s);
-s;
C.inti=100;
while(1){
i=i%100+l;
if(i>100)break;
}
D.for(;;);
正确答案:A
21、以下是死循环的程序段是()。
A.i=l;
while(i-);
B.for(i=l;;){
if(i++%2==0)continue;
if(i++%3==0)break;
)
C.i=32767;
do{
if(i<0)break;
}while(++i);
D.for(i=l;;)if(++i<10)continue;
正确答案:D
22、下面关于循环语句的描述中,()是错误的。
A循环体内可以包含有循环语句
B彳盾环体内必须同时出现break语句和continue语句
C循环体内可以出现选择语句
D.循环体内可以是空语句
正确答案:B
23、C语言的跳转语句中,对于break和continue说法正确的是()
A.break语句只应用与循环体中
B.continue语句只应用于循环体中
C.break是无条件跳转语句,continue不是
D.break和continue的跳转范围不够明确,容易产生问题
正确答案:B
24、下面程序段运行时从键盘上输入:2473/,其输出结果是()。
#include<stdio.h>
intmain()
{intc;
while((c=getchar())!='\n')
switch(c-'2'){
case0:
case1:putchar(c+4);
case2:putchar(c+4);break;
case3:putchar(c+3);
default:putchar(c+2);break;
)
printf("\n");
return0;
)
A.668977
B.668966
C.66778777
D.6688766
正确答案:A
25、下面程序段中while循环的循环次数是()。
inti=0;
while(i<10){
if(i<l)continue;
if(i==5)break;
i++;
)
A.l
B.10
C.6
D.死循环,不能确定次数
正确答案:D
26、下面程序执行后的输出结果是()o
#include<stdio.h>
intmain()
{inti=0,s=0;
for(;;){
if(i==3||i==5)continue;
if(i==6)break;
i++;s+=i;
);
printf("%d",s);
return0;
}
A.10
B.13
C.21
D.死循环
正确答案:D
27、下面程序执行后的输出结果是()o
#include<stdio.h>
intmain()
{intk=0,m=0,i,j;
for(i=0;i<2;i++){
for0=0;j<3;j++)k++;
k-=j;
)
m=i+j;
printf("k=%d,m=%d"/k,m);
return0;
}
A.k=0,m=3
B.k=0,m=5
C.k=l,m=3
D.k=l,m=5
正确答案:B
二、判断题
1、do-while允许从外部转到循环体内。(x)
2、do-while循环中,根据情况可以省略while。(x)
3、for循环中三个表达式可以任意省略,while、do-while的表达式也是如此。(V)
4、continue语句只能用于三个循环语句中。(V)
5、for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来。(7)
三、填空题
1、•写出下面程序执行后的运行结果。
#indude<stdio.h>
intmain()
{inti,k=19;
while(i=k-l){
k-=3;
if(k%5==0){i++;continue;}
elseif(k<5)break;
i++;
}
printf("i=%d,k=%d",i,k);
return0;
)
正确答案:i=6,k=4
2、•下面程序运行时从键盘上输入:420/,写出程序的运行结果。
#include<stdio.h>
intmain()
{charc;
while((c=getchar())!='\n')
switch(c-'O'){
case0:
casel:putchar(c+2);
case2:putchar(c+3);break;
case3:putchar(c+4);
default:putchar(c+1);break;
)
return0;
)
正确答案:5523
3、•写出下面程序执行后的运行结果。
#include<stdio.h>
intmain()
{intk=l,n=263;
do<k*=n%10;n/=10;}while(n);
printf("%d",k);
return0;
)
正确答案:36
4、•写出下面程序执行后的运行结果。
#include<stdio.h>
intmain()
{inti=5;
do{
switch(i%10){
case4:i-;break;
case6:i-;continue;
)
i--;i-;
printf("%d",i);
}while(i>0);
retu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年个人从事消防劳动合作协议书版B版
- 房屋建筑修建设计合同(2024版)2篇
- 2024年国际销售代理合同样本版B版
- 2024年专利权质权设立协议
- 江南大学《读写(1)》2021-2022学年第一学期期末试卷
- 佳木斯大学《幼儿游戏与指导》2021-2022学年第一学期期末试卷
- 二零二四年度蔬菜农场与批发市场配送合同2篇
- 2024年国际贸易英文协议模板版B版
- 暨南大学《中外民族音乐赏析》2021-2022学年第一学期期末试卷
- 暨南大学《审计理论与方法》2021-2022学年第一学期期末试卷
- MOOC 跨文化交际通识通论-扬州大学 中国大学慕课答案
- 产品检针记录表
- 植桩法及新型预制桩简介[行业知识]
- 石油工程常见违章行为风险分级标准
- 体育特色学校建设方案
- 快递员管理制度
- 五年级品德与社会远离危险地带PPT学习教案
- 血管麻痹综合征(刘德昭)
- 过程装备与控制工程毕业论文
- HXD3电力机车题库填空题
- 普希金《致凯恩》精析中俄文版 俄语入门翻译范文教学习入门俄语字母词汇语法
评论
0/150
提交评论