第06部份 循环.docx
- 文档编号:11001955
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:43
- 大小:25.29KB
第06部份 循环.docx
《第06部份 循环.docx》由会员分享,可在线阅读,更多相关《第06部份 循环.docx(43页珍藏版)》请在冰豆网上搜索。
第06部份循环
第6章循环程序设计
一、单选题
1.以下关于循环的描述中,错误的是:
( )。
A.可以用for语句实现的循环一定可以用while语句实现
B.可以用while语句实现的循环一定可以用for语句实现
C.可以用do...while语句实现的循环一定可以用while语句实现
D.do...while语句与while语句的区别仅仅是关键字while的位置不同
(知识点:
循环的基本概念; 难度系数:
1; 答案:
D)
2.以下关于循环的描述中,错误的是:
( )。
A.while、do...while和for语句的循环体都可以是空语句
B.for和do...while语句都是先执行循环体,后进行循环条件判断
C.while语句是先进行循环条件判断,后执行循环体的
D.使用while和do...while语句时,循环变量初始化的操作应在循环语句之前完成
(知识点:
循环的基本概念; 难度系数:
1; 答案:
B)
3.以下关于循环体的描述中,错误的是:
( )。
A.循环体中可以出现break语句
B.循环体中可以出现continue语句
C.循环体中不能出现switch语句
D.循环体中还可以出现循环语句
(知识点:
循环的基本概念; 难度系数:
1; 答案:
C)
4.在while(x)语句中的x与下面条件表达式等价的是:
( )。
A.x==0B.x==1C.x!
=lD.x!
=0
(知识点:
while语句; 难度系数:
1; 答案:
D)
5.在C语言中,当while语句构成的循环中的条件为( )时,结束循环。
A.0B.1C.真D.非0
(知识点:
while语句; 难度系数:
1; 答案:
A)
6.有以下程序段:
intk=0;
while(k=1)k++;
while循环执行的次数是:
( )。
A.无限次B.有语法错,不能执行
C.一次也不执行D.执行一次
(知识点:
while语句; 难度系数:
1; 答案:
A)
7.有以下程序段:
intx=0;
while(x=1)
{……}
则以下叙述中正确的是:
( )。
A.循环控制表达式的值为0B.循环控制表达式的值为1
C.循环控制表达式不合法D.以上说法都不正确
(知识点:
while语句; 难度系数:
1; 答案:
B)
8.下述语句执行后,变量k的值是:
( )。
intk=0;
while(k++<2);
printf("%d",k);
A.2B.3C.01D.12
(知识点:
while语句; 难度系数:
2; 答案:
B)
9.以下叙述正确的是:
( )。
A.do...while语句构成的循环不能用其他语句构成的循环代替
B.只有do...while语句构成的循环能用break语句退出
C.用do...while语句构成循环时,在while后的表达式为零时不一定结束循环
D.用do...while语句构成循环时,在while后的表达式为零时结束循环
(知识点:
do...while语句; 难度系数:
1; 答案:
D)
10.以下关于do...while语句的叙述中,正确的是:
( )。
A.do...while的循环体至少无条件执行一次
B.while的循环控制条件比do...while的循环控制条件严格
C.do...while允许从外部转到循环体内
D.do...while的循环体不能是复合语句
(知识点:
do...while语句; 难度系数:
1; 答案:
A)
11.该程序段的输出结果是:
( )。
main()
{
intn=9;
do
{
n--;
printf("%d",n);
}while(n>6);
}
A.987B.876C.8765D.9876
(知识点:
do...while语句; 难度系数:
1; 答案:
B)
12.有以下程序段:
inti=0,s=0;
do
{
s=++i;
}while(i!
=0);
printf("%d",s);
则以下说法正确的是:
( )。
A.程序段执行无限次B.程序段中的do...while表达式不合法
C.程序段运行后输出0D.程序段运行后输出1
(知识点:
do...while语句; 难度系数:
1; 答案:
A)
13.有以下程序段:
intx=-1;
do
{
x=x*x;
}while(!
x);
则以下说法正确的是:
( )。
A.是无限循环B.循环执行两次
C.循环执行一次D.循环条件不合法
(知识点:
do...while语句; 难度系数:
1; 答案:
C)
14.下面有关for循环的正确描述是:
( )。
A)for循环只能用于循环次数已经确定的情况
B)for循环是先执行循环体语句,后判断表达式
C)在for循环中,不能用break语句跳出循环体
D)for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
(知识点:
for语句; 难度系数:
1; 答案:
D)
15.对于for(表达式1;;表达式3)可理解为:
( )。
A.for(表达式1;0;表达式3)
B.for(表达式1;1;表达式3)
C.for(表达式1;表达式1;表达式3)
D.for(表达式1;表达式3;表达式3)
(知识点:
for语句; 难度系数:
1; 答案:
B)
16.以下循环体的执行次数是:
( )。
main()
{
inti,j;
for(i=0,j=1;i<=j+1;i++,j--)
printf("%d\n",i);
}
A.3B.2C.1D.0
(知识点:
for语句; 难度系数:
1; 答案:
B)
17.以下for语句运行时循环次数是:
( )。
for(i=0,j=0;(j!
=10)&&(i<5);i++);
A.无限次B.4次C.5次D.6次
(知识点:
for语句; 难度系数:
1; 答案:
C)
18.下述语句执行后,变量i的值是:
( )。
inti;
for(i=1;i++<3;);
printf("%d",i);
A.1B.2C.3D.4
(知识点:
for语句; 难度系数:
2; 答案:
D)
19.以下程序段中,内重循环总的执行次数是:
( )。
inti,j;
for(i=5;i>0;i--)
for(j=0;j<4;j++)
{……}
A.20次B.24次C.25次D.30次
(知识点:
循环的嵌套; 难度系数:
1; 答案:
A)
20.以下程序段的输出结果是:
( )。
main()
{
inti,j,m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4)
m++;
printf("%d\n",m);
}
A.12B.15C.20D.25
(知识点:
循环的嵌套; 难度系数:
1; 答案:
C)
21.下面程序的输出结果是:
( )。
main()
{
intk,j,m;
for(k=5;k>=1;k--)
{
m=0;
for(j=k;j<=5;j++)
m=m+k*j;
}
printf(“%d\n”,m);
}
A.124B.25C.36D.15
(知识点:
循环的嵌套; 难度系数:
1; 答案:
D)
22.下面程序的输出结果是:
( )。
main()
{
intk=0,m=0;
inti,j;
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
k++;
k-=j;
}
m=i+j;
printf("k=%d,m=%d",k,m);
}
A.k=0,m=3B.k=0,m=5C.k=1,m=3D.k=1,m=5
(知识点:
循环的嵌套; 难度系数:
1; 答案:
B)
23.下面程序的输出结果是:
( )。
main()
{
inti,b,k=0;
for(i=1;i<=5;i++)
{
b=i%2;
while(b--==0)
k++;
}
printf("%d,%d",k,b);
}
A.3,1B.3,0C.2,1D.2,0
(知识点:
循环的嵌套; 难度系数:
1; 答案:
D)
24.C语言中while与do...while语句的主要区别是:
( )。
A.do...while的循环体至少无条件执行一次
B.do...while允许从外部跳到循环体内
C.while的循环体至少无条件执行一次
D.while的循环控制条件比do...while的严格
(知识点:
几种循环的比较; 难度系数:
1; 答案:
A)
25.以下关于C语言中几种循环的描述,错误的是:
( )。
A.while和for是先判断表达式,后执行语句;而do...while是先执行语句,后判断表达式
B.do...while的循环体至少执行一次,而while的循环体可能一次都不会执行
C.对于while、do...while和for循环,都可以用continue语句跳出当次循环
D.for循环只能用于循环次数已经确定的情况,而while和do...while没有这种限制
(知识点:
几种循环的比较; 难度系数:
1; 答案:
D)
26.以下关于break语句的描述中,正确的是:
( )。
A.在switch语句中必须使用break语句
B.break语句只能用于switch语句体中
C.在switch语句中可以使用break语句
D.break语句只能用于循环语句中
(知识点:
break语句; 难度系数:
1; 答案:
C)
27.以下描述中,错误的是:
( )。
A.break语句和continue语句的作用是一样的
B.break语句可用于for循环
C.break语句可用于while循环
D.在循环体中使用break语句可以跳出循环体,提前结束循环
(知识点:
break语句; 难度系数:
1; 答案:
A)
28.以下描述中,错误的是:
( )。
A.continue语句可用于for循环
B.continue语句可用于while循环
C.在循环体中使用break语句可以跳出循环体,提前结束循环
D.在循环体中使用continue语句是为了跳出循环,提前结束循环
(知识点:
continue语句; 难度系数:
1; 答案:
D)
29.关于break语句和continue语句的区别,说法正确的是:
( )。
A.break语句和continue语句都只能用于循环结构
B.break语句和continue语句都只能用于switch结构
C.break语句用于跳出循环体,continue语句用于跳出当次循环
D.continue语句用于跳出循环体,break语句用于跳出当次循环
(知识点:
continue语句; 难度系数:
1; 答案:
C)
30.列举出所有可能的情况,逐个判断有哪些符合问题所要求的条件,从而得到问题的解答。
这种方法称为:
( )。
A.递归法B.穷举法C.迭代法D.归纳法
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
B)
31.为了得到问题的解,把它推到比原问题简单的问题求解。
这种方法称为:
( )。
A.递归法B.穷举法C.迭代法D.归纳法
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
A)
32.对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。
这种方法称为:
( )。
A.递归法B.穷举法C.迭代法D.归纳法
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
C)
二、多选题
1.以下关于循环的描述中,正确的有:
( )。
A.可以用for语句实现的循环一定可以用while语句实现
B.可以用while语句实现的循环一定可以用for语句实现
C.for循环表达式的括号内的3个表达式均不可以省略
D.可以用do...while语句实现的循环一定可以用while语句实现
E.do...while语句与while语句的区别仅仅是关键字while的位置不同
(知识点:
循环的基本概念; 难度系数:
1; 答案:
ABD)
2.以下关于while语句的描述中,正确的有:
( )。
A.while(x)语句中的x等价于x!
=l
B.while(!
x)语句中的!
x等价于x==0
C.while(!
x)语句中的!
x等价于x==1
D.当while语句构成的循环中的条件为0时,结束循环
E.当while语句构成的循环中的条件为真时,结束循环
(知识点:
while语句; 难度系数:
1; 答案:
BD)
3.以下关于do...while语句的描述中,错误的有:
( )。
A.用do...while语句构成循环时,在while后的表达式为零时不一定结束循环
B.用do...while语句构成循环时,在while后的表达式为零时结束循环
C.do...while的循环体至少无条件执行一次
D.do...while允许从外部转到循环体内
E.do...while的循环体不能是复合语句
(知识点:
do...while语句; 难度系数:
1; 答案:
ADE)
4.以下关于for语句的描述中,正确的有:
( )。
A.若有for(;;){……},是指循环体执行0次
B.在for循环中,不能用break语句跳出循环体
C.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
D.执行for(i=0,j=0;i<2;i++);j=j+1;后j的值为1
E.for循环可以用于循环次数不能确定的情况
(知识点:
for语句; 难度系数:
1; 答案:
CE)
5.以下关于循环嵌套的描述中,正确的有:
( )。
A.所有类型的循环都可以进行嵌套使用
B.只有for循环可以嵌套使用
C.循环的嵌套只能是同一种循环结构的嵌套
D.在for循环结构内可以嵌套一个while循环结构
E.在while循环结构内可以嵌套一个for循环结构
(知识点:
循环的嵌套; 难度系数:
1; 答案:
ADE)
6.以下关于while与do...while语句的描述中,正确的有:
( )。
A.while的循环控制条件比do...while的严格
B.while的循环体至少无条件执行一次
C.do...while的循环体至少无条件执行一次
D.可以用do...while语句实现的循环一定可以用while语句实现
E.do...while允许从外部跳到循环体内
(知识点:
几种循环的比较; 难度系数:
1; 答案:
CD)
7.以下关于break语句的描述中,正确的有:
( )。
A.break语句只能用于循环结构
B.利用break语句可以提前终止循环的执行
C.break语句只能用于switch结构
D.break语句和continue语句可以同时出现在同一个循环体内
E.在switch语句中必须使用break语句
(知识点:
break语句; 难度系数:
1; 答案:
BD)
8.以下关于break和continue语句的描述中,错误的有:
( )。
A.break语句和continue语句不可以同时出现在同一个循环体内
B.break语句用于跳出循环体,continue语句用于跳出当次循环
C.continue语句用于跳出循环体,break语句用于跳出当次循环
D.利用continue语句可以提前终止循环的执行
E.break语句和continue语句都只能用于循环结构
(知识点:
continue语句; 难度系数:
1; 答案:
ACDE)
三、判断题
1.( )循环是指使用一定条件对同一个程序段重复执行若干次。
(知识点:
循环的基本概念; 难度系数:
1; 答案:
T)
2.( )循环体中可以出现break语句,但不能出现continue语句。
(知识点:
循环的基本概念; 难度系数:
1; 答案:
F)
3.( )可以用while语句实现的循环一定可以用for语句实现。
(知识点:
循环的基本概念; 难度系数:
1; 答案:
T)
4.( )while(x)语句中的x等价于x==1。
(知识点:
while语句; 难度系数:
1; 答案:
F)
5.( )while(!
x)语句中的!
x等价于x==0。
(知识点:
while语句; 难度系数:
1; 答案:
T)
6.( )用1作while循环的判断条件,则循环一次也不执行。
(知识点:
while语句; 难度系数:
1; 答案:
F)
7.( )while语句是先执行循环体,后进行循环条件判断。
(知识点:
while语句; 难度系数:
1; 答案:
F)
8.( )while循环的循环体可能一次也不会执行。
(知识点:
while语句; 难度系数:
1; 答案:
T)
9.( )do...while的循环体可能一次也不会执行。
(知识点:
do...while语句; 难度系数:
1; 答案:
F)
10.( )do...while语句构成的循环不能用其它语句构成的循环代替。
(知识点:
do...while语句; 难度系数:
1; 答案:
F)
11.( )do...while语句构成的循环可以用break语句跳出。
(知识点:
do...while语句; 难度系数:
1; 答案:
T)
12.( )do...while语句是先进行循环条件判断,后执行循环体。
(知识点:
do...while语句; 难度系数:
1; 答案:
F)
13.( )do...while循环可以写成while循环的格式。
(知识点:
do...while语句; 难度系数:
1; 答案:
T)
14.( )for循环表达式的括号内的3个表达式均不可以省略。
(知识点:
for语句; 难度系数:
1; 答案:
F)
15.( )若有for(;;){……},是指循环体执行0次。
(知识点:
for语句; 难度系数:
1; 答案:
F)
16.( )执行for(i=0;i<3;i++);后i的值为2。
(知识点:
for语句; 难度系数:
1; 答案:
F)
17.( )不管循环次数确不确定,都可以使用for循环。
(知识点:
for语句; 难度系数:
1; 答案:
T)
18.( )for循环表达式的括号内的3个表达式都可以省略。
(知识点:
for语句; 难度系数:
1; 答案:
T)
19.( )所有类型的循环都可以进行嵌套使用。
(知识点:
循环的嵌套; 难度系数:
1; 答案:
T)
20.( )循环的嵌套只能是同一种循环结构的嵌套。
(知识点:
循环的嵌套; 难度系数:
1; 答案:
F)
21.( )在for循环结构内可以嵌套一个while循环结构。
(知识点:
循环的嵌套; 难度系数:
1; 答案:
T)
22.( )在while循环结构内不能嵌套一个for循环结构。
(知识点:
循环的嵌套; 难度系数:
1; 答案:
F)
23.( )在多重循环中,外重循环的循环次数和内重一样多。
(知识点:
循环的嵌套; 难度系数:
1; 答案:
F)
24.( )do...while语句与while语句的区别仅仅是关键字while的位置不同。
(知识点:
几种循环的比较; 难度系数:
1; 答案:
F)
25.( )while和do...while的循环体都可能一次都不执行。
(知识点:
几种循环的比较; 难度系数:
1; 答案:
F)
26.( )利用break语句可以提前终止循环的执行。
(知识点:
break语句; 难度系数:
1; 答案:
T)
27.( )break语句只能用于循环结构。
(知识点:
break语句; 难度系数:
1; 答案:
F)
28.( )利用continue语句可以提前终止循环的执行。
(知识点:
continue语句; 难度系数:
1; 答案:
F)
29.( )break语句和continue语句不可以同时出现在同一个循环体内。
(知识点:
continue语句; 难度系数:
1; 答案:
F)
30.( )穷举法的基本思想是,对问题的所有可能状态逐一测试,直至找到解或将全部可能状态都测试完为止。
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
T)
31.( )递推法实际上是一种递推关系,就是为了得到问题的解,把它推到比原问题简单的问题求解。
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
T)
32.( )迭代是一个不断用新值取代变量的旧值,或由旧值递推得出变量的新值的过程。
(知识点:
常用算法(穷举、递推、迭代)的基本应用; 难度系数:
1; 答案:
T)
四、填空题
1.C语言中,三种常用的循环结构是___①___、___②___和___③___。
(知识点:
循环的基本概念; 难度系数:
1; 答案:
①for②while③do...while)
2.该程序的功能是:
将一个整数首尾倒置,若程序输入12345,则输出54321;若程序输入-34567,则输出-76543,请填空。
#include
main()
{
intm,n,y=0;
scanf("%d",&n);
m=fabs(n);
while(m!
=0)
{
y=y*10+m%10;
___①___;
}
if(n<0)
___②___;
printf("%d",y);
}
①A.y=y/10B.y=y%10C.m=m/10D.m=m%10
②A.y=-yB.m=-mC.n=-nD.m=fabs(n)
(知识点:
while语句; 难度系数:
1; 答案:
①C②A)
3.该程序的功能是:
从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,但输入负数时结束输入,请填空。
main()
{
floatx,amax,amin;
scanf("%f",&x);
amax=x;amin=x;
while(___①___)
{
if(x>amax)amax=x;
if(___②___)amin=x;
scanf("%f",&x);
}
printf("\namax=%f\namin=%f\n",amax,amin);
}
①A.x>0B.x>=0C.x!
=0D.x==0
②A.x
(知识点:
while语句; 难度系数:
1; 答案:
①B②C)
4.已知下列程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第06部份 循环 06 部份