内容正文:
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《编程语言基础-C语言》(高教版第5版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《编程语言基础-C语言》(高教版第5版)一课一练的第4章的第18练,内容涵盖第4章 循环结构程序设计的4.2 do…while循环。
《编程语言基础-C语言》(高教版第5版)第18练
第4章 循环结构程序设计
4.2 do…while循环(解析版)
一、单项选择题(本题共5小题)
1、关于do…while循环,下列说法正确的是( )
A. 循环体至少被执行一次
B. 循环体可能一次都不执行
C. 循环条件必须放在循环体之前
D. do…while循环不能嵌套使用
【答案】A
【解析】 do…while循环先执行循环体,再判断条件,因此循环体至少执行一次。B是while循环的特点;C错误,条件放在循环体之后;D错误,do…while可以嵌套。
2、有以下程序段,输出结果是( )
int i = 1;
do {
printf("%d ", i);
i++;
} while(i <= 5);
A. 1 2 3 4 5
B. 1 2 3 4
C. 2 3 4 5
D. 2 3 4 5 6
【答案】A
【解析】 i从1开始,先输出1,i++变为2,判断条件2≤5为真,继续循环,直到i=5输出后i++变为6,条件6≤5为假退出,输出1 2 3 4 5。
3、有以下程序段,循环体执行的次数是( )
int k = 10;
do {
k = k - 1;
} while(k == 0);
A. 0次
B. 1次
C. 10次
D. 无限次
【答案】B
【解析】 do…while先执行一次循环体,k由10变为9,然后判断条件k==0(9==0为假),循环结束,因此循环体执行1次。
4、以下程序段,输出结果是( )
int a = 5;
do {
printf("%d", a);
a--;
} while(a > 0);
A. 54321
B. 543210
C. 4321
D. 无限循环
【答案】A
【解析】 a初始5,先输出5,a--变为4,判断a>0为真,继续;输出4、3、2、1,当a=1输出后a--变为0,判断0>0为假退出循环,输出"54321"。
5、以下程序段,若输入123,输出结果是( )
int n, sum = 0;
scanf("%d", &n);
do {
sum += n % 10;
n /= 10;
} while(n != 0);
printf("%d", sum);
A. 1
B. 3
C. 5
D. 6
【答案】D
【解析】 输入123,第一次循环:sum=0+3=3,n=12;第二次:sum=3+2=5,n=1;第三次:sum=5+1=6,n=0;判断n!=0为假退出,输出6。do…while确保当n=0时(如输入0)也能正确输出0。
2、 判断题(本题共5小题)
1、do…while循环的循环体至少会被执行一次,无论循环条件是否成立。( )
【答案】√
【解析】 do…while先执行循环体再判断条件,这是其与while循环的本质区别。
2、do…while循环的结束条件是循环条件表达式为真时继续循环,为假时结束。( )
【答案】√
【解析】 do…while的语义是“执行循环体,当条件为真时重复执行”,条件为假时退出循环。
3、以下程序段会输出0到9共10个数字。( )
int i = 0;
do {
printf("%d ", i);
} while(i++ <=9);
【答案】×
【解析】 循环条件中使用i++后置递增,先判断再自增。当i=9时输出9,判断9<=9为真,i++使i变为10,输出10,此时判断10<=9为假。
4、do…while循环的条件表达式后面必须加分号,否则会产生语法错误。( )
【答案】√
【解析】 do…while语句的标准语法是do 循环体 while(条件);,while(条件)后面的分号是语法要求,不可省略。
5. 任何使用while循环的程序都可以改用do…while循环实现,且执行结果完全相同。( )
【答案】×
【解析】 while循环可能一次都不执行循环体,而do…while至少执行一次,因此两者不能无条件互换。只有当循环体至少需要执行一次时,才可能用do…while替代while。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《编程语言基础-C语言》(高教版第5版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《编程语言基础-C语言》(高教版第5版)一课一练的第4章的第18练,内容涵盖第4章 循环结构程序设计的4.2 do…while循环。
《编程语言基础-C语言》(高教版第5版)第18练
第4章 循环结构程序设计
4.2 do…while循环(原卷版)
一、单项选择题(本题共5小题)
1、关于do…while循环,下列说法正确的是( )
A. 循环体至少被执行一次
B. 循环体可能一次都不执行
C. 循环条件必须放在循环体之前
D. do…while循环不能嵌套使用
2、有以下程序段,输出结果是( )
int i = 1;
do {
printf("%d ", i);
i++;
} while(i <= 5);
A. 1 2 3 4 5
B. 1 2 3 4
C. 2 3 4 5
D. 2 3 4 5 6
3、有以下程序段,循环体执行的次数是( )
int k = 10;
do {
k = k - 1;
} while(k == 0);
A. 0次
B. 1次
C. 10次
D. 无限次
4、以下程序段,输出结果是( )
int a = 5;
do {
printf("%d", a);
a--;
} while(a > 0);
A. 54321
B. 543210
C. 4321
D. 无限循环
5、以下程序段,若输入123,输出结果是( )
int n, sum = 0;
scanf("%d", &n);
do {
sum += n % 10;
n /= 10;
} while(n != 0);
printf("%d", sum);
A. 1
B. 3
C. 5
D. 6
2、 判断题(本题共5小题)
1、do…while循环的循环体至少会被执行一次,无论循环条件是否成立。( )
2、do…while循环的结束条件是循环条件表达式为真时继续循环,为假时结束。( )
3、以下程序段会输出0到9共10个数字。( )
int i = 0;
do {
printf("%d ", i);
} while(i++ <=9);
4、do…while循环的条件表达式后面必须加分号,否则会产生语法错误。( )
5. 任何使用while循环的程序都可以改用do…while循环实现,且执行结果完全相同。( )
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$