内容正文:
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《C语言程序设计》(高教版第2版)一课一练的单元5的第18练,内容涵盖单元5“身高体型判定系统”完整版的5.2.2 do-while循环。
《C语言程序设计》(高教版第2版)一课一练 第18练
单元5 “身高体型判定系统”完整版
5.2.2 do-while循环
1、 单项选择题(本题共5小题)
1、关于 do…while 语句的执行流程,以下描述正确的是( )
A. 先判断循环条件,条件为真时执行循环体
B. 循环体至少会被执行一次
C. 循环条件为真时直接退出循环
D. 循环体只能包含单个语句
【答案】B
【解析】do…while 语句的核心特点是先执行循环体,再判断循环条件,因此无论条件初始是否为真,循环体至少会被执行一次;选项 A 是 while 语句的执行逻辑;选项 C 条件为真时会继续执行循环体;选项 D 循环体包含多个语句时,用大括号包裹即可,并非只能单个语句。
2、执行代码int i=5; do{printf("%d ",i--);}while(i>5);后,输出结果是( )
A. 无输出
B. 5
C. 5 4
D. 5 4 3 2 1
【答案】B
【解析】先执行循环体,输出 5,i 自减为 4;再判断循环条件 i>5 为假,直接退出循环,因此仅输出 5。
3、以下 do…while 语句的语法格式完全正确的是( )
A. do {printf ("test"); } while (1);
B. do printf ("test"); while (1)
C. do { printf ("test") } while (1);
D. do printf ("test"); while (1)
【答案】A
【解析】选项 B、D 中 while 括号后缺少分号,会导致语法错误;选项 C 中循环体语句末尾缺少分号;只有选项 A 的语法符合 do…while 的书写规范。
4、用 do…while 语句计算 1 到 n 的累加和,以下代码片段逻辑正确的是( )
A. int sum=0, i=1; do {sum+=i; i++;} while (i<=n);
B. int sum=0, i=0; do { sum+=i; i++; } while (i<=n);
C. int sum=0, i=1; do { sum+=i; } while (i<=n);
D. int sum=1, i=1; do { sum+=i; i++; } while (i<=n);
【答案】A
【解析】选项 B 中 i 从 0 开始会多累加 0,结果错误;选项 C 中 i 未自增,会进入死循环;选项 D 中 sum 初始值为 1 会导致结果多 1;选项 A 的初始值、循环体操作、循环条件都符合累加逻辑。
5、关于 while 和 do…while 语句的区别,错误的描述是( )
A. do…while 循环体至少执行一次,while 可能一次都不执行
B. while 的循环条件在循环体之前,do…while 在循环体之后
C. 两者的循环条件判断逻辑完全相反
D. 当循环条件初始为假时,两者的执行结果不同
【答案】C
【解析】while 和 do…while 的循环条件判断逻辑一致,都是非 0(真)时继续循环,只是判断时机不同,因此选项 C 的描述错误。
2、 判断题(本题共3题)
1、do…while 语句中,while 关键字后面的分号可以省略不写。( )
【答案】×
【解析】do…while 语句的语法要求,while 括号后面必须加分号作为语句结束标记,省略会导致编译错误。
2、若循环条件初始值为假,while 循环和 do…while 循环的执行结果完全相同。( )
【答案】×
【解析】while 循环会直接跳过循环体,do…while 循环会执行一次循环体后再退出,因此两者的执行结果不同。
3、do…while 语句的循环体如果包含多个语句,必须用大括号{}包裹成复合语句。( )
【答案】√
【解析】若不用大括号,do…while 只会将紧跟的第一个语句视为循环体,其他语句不属于循环部分,会导致逻辑错误,因此多语句循环体必须用大括号包裹。
3、 填空题(本题共2题)
1、do…while 语句与 while 语句的核心区别在于____。
【答案】循环体和循环条件的执行顺序不同
【解析】这是两种循环语句最本质的差异,直接决定了循环体的最少执行次数。该差异使得 do…while 更适合需要先执行一次操作再判断是否继续的场景。
2、用 do…while 语句实现循环时,当 while 后面的表达式值为____时,会重复执行循环体。
【答案】非 0(或真)
【解析】C 语言中以非 0 表示逻辑真,0 表示逻辑假。do…while 语句遵循这一通用规则,条件为非 0 时继续循环,符合 C 语言循环结构的逻辑规范。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《C语言程序设计》(高教版第2版)一课一练的单元5的第18练,内容涵盖单元5“身高体型判定系统”完整版的5.2.2 do-while循环。
《C语言程序设计》(高教版第2版)一课一练 第18练
单元5 “身高体型判定系统”完整版
5.2.2 do-while循环
1、 单项选择题(本题共5小题)
1、关于 do…while 语句的执行流程,以下描述正确的是( )
A. 先判断循环条件,条件为真时执行循环体
B. 循环体至少会被执行一次
C. 循环条件为真时直接退出循环
D. 循环体只能包含单个语句
2、执行代码int i=5; do{printf("%d ",i--);}while(i>5);后,输出结果是( )
A. 无输出
B. 5
C. 5 4
D. 5 4 3 2 1
3、以下 do…while 语句的语法格式完全正确的是( )
A. do {printf ("test"); } while (1);
B. do printf ("test"); while (1)
C. do { printf ("test") } while (1);
D. do printf ("test"); while (1)
4、用 do…while 语句计算 1 到 n 的累加和,以下代码片段逻辑正确的是( )
A. int sum=0, i=1; do {sum+=i; i++;} while (i<=n);
B. int sum=0, i=0; do { sum+=i; i++; } while (i<=n);
C. int sum=0, i=1; do { sum+=i; } while (i<=n);
D. int sum=1, i=1; do { sum+=i; i++; } while (i<=n);
5、关于 while 和 do…while 语句的区别,错误的描述是( )
A. do…while 循环体至少执行一次,while 可能一次都不执行
B. while 的循环条件在循环体之前,do…while 在循环体之后
C. 两者的循环条件判断逻辑完全相反
D. 当循环条件初始为假时,两者的执行结果不同
2、 判断题(本题共3题)
1、do…while 语句中,while 关键字后面的分号可以省略不写。( )
2、若循环条件初始值为假,while 循环和 do…while 循环的执行结果完全相同。( )
3、do…while 语句的循环体如果包含多个语句,必须用大括号{}包裹成复合语句。( )
3、 填空题(本题共2题)
1、do…while 语句与 while 语句的核心区别在于____。
2、用 do…while 语句实现循环时,当 while 后面的表达式值为____时,会重复执行循环体。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$