第五章 C语言多重循环语句
合集下载
c语言中无限循环的2种方式

c语言中无限循环的2种方式在C语言中,我们经常需要实现无限循环的功能。
无限循环就是指程序会一直执行某个操作,直到满足某个条件才停止。
以下是C语言中实现无限循环的两种方式:1. while循环while循环是C语言中最常用的循环结构之一,它的语法如下: while (条件表达式){执行语句;}当条件表达式为真时,会一直执行循环体中的语句,直到条件表达式为假为止。
如果条件表达式一直为真,那么这个while循环就会一直执行下去,实现无限循环的功能。
例如,以下代码就是一个无限循环的while循环:while (1){printf('Hello, world!');}这个while循环的条件表达式永远为真,因此会一直输出'Hello, world!',直到程序被手动停止。
2. for(;;)循环除了while循环之外,C语言中还有一种更简洁的无限循环方式,那就是for(;;)循环。
这种循环结构的语法如下:for (;;){执行语句;}由于for循环中的三个表达式都可以省略,因此for(;;)循环就变成了一个无限循环的结构。
和while循环一样,只有在满足特定的条件时,程序才会退出循环。
例如,以下代码就是一个无限循环的for(;;)循环:for (;;){printf('Hello, world!');}这个for(;;)循环的三个表达式都被省略了,因此会一直输出'Hello, world!',直到程序被手动停止。
总结在C语言中实现无限循环的两种方式分别是while循环和for(;;)循环。
无论使用哪种方式,都需要注意在循环体中添加退出循环的条件,否则程序将会一直运行下去,直到被手动停止。
高树芳C语言程序设计--第五章

VC程序代码
21
5.4
for循环结构
相关知识:
求解表达式1
1.for语句 见执行过程图。 2. for语句的说明 三个表达式均可省略, 但两个分号不可省略。
假 计算表达式2 真 循环体语句
求解表达式3
for语句的后续语句
22
5.2
while(当型)循环结构
[课堂训练5-4] 用for循环编程实现倒计时效果。即在屏幕上 固定位置显示10,然后清除之,再显示9,之后 是8……,至到1。
是成绩非-1等。
10
5.2
while(当型)循环结构
相关知识:
1.while语句的一般形式 2.while语句的说明 3.循环结构的构造方法 4.if语句与循环语句的区别
11
5.2
while(当型)循环结构
[课堂训练5-2] 计算s=1+1/2+1/3+1/4+„„+1/n,直到s大于或等 于3为止,输出n的值。 提示: 这是“标志”型循环。设置实型变量s并设初值为 0.0,设置整型变量i并设初值为1,循环条件是 s<=3,重复内容是s=s+1.0/i,注意要使用1.0实型 常量,或者将1或i作强制类型转换,将其转换为 实数,否则运算结果为0。
20
5.4 for循环结构 案例5-6 跳动的“O”
[案例任务]
编程实现字符“O”从屏幕的左端移动到右端。每一 秒种移动一下,形成跳动的效果。运算结果大致如 下。
[解决方案]首先显示一个O,延时片刻,然后光标
后退(用转义字符),再显示一个空格和一个O。循 环以上功能直到光标到屏幕最右端。
WIN-TC程序代码
[解决方案]该循环至少执行1次,使用do„while
C语言程序设计_05循环结构程序设计

5.2 DO…WHILE循环结构 5.2.1 DO…WHILE语句的格式 DO…WHILE语句的一般格式为: DO 语句 WHILE(表达式); DO…WHILE语句中的表达式表示循环的条件,可 以是任何表达式,常用的是关系表达式和逻辑表达 式。表达式必须加圆括号。语句是重复执行的部分, 称作循环体。
由亍循环体在表达式2乊后表达式3乊前执行所以把循环体语句放在表达式3的开头循环体语句不原来的i构成逗号表达式作为循环语句新的表达式3从而也就没有循环体语句了
第5章 循环结构程序设计
5.1 WHILE循环结构 5.2 DO…WHILE循环结构 5.3 FOR循环结构 5.4 与循环有关的控制语句 5.5 3种循环语句的比较 5.6 循环的嵌套 5.7 循环结构程序举例 本章小结
图5-6 FOR语句执行过 程
FOR语句的执行过程如图5-6所示。具体由以下几步 完成: (1)求表达式1。 (2)求表达式2,并判定其值为0或非0。若值为非0, 转步骤(3);否则结束FOR语句。 (3)执行语句,然后求表达式3。 (4)转向步骤(2)。 由FOR语句的执行流程可知,表达式1的作用是为循 环控制的有关变量赋初值,表达式2是循环控制条件, 表达式3用于修正有关变量,语句是重复执行部分。
【例5.7】输入20个数,求出其中的最大值与最小值。
5.3.3 FOR语句的各种变形 1.在FOR语句中省略表达式 FOR语句中的3个表达式可以部分或全部省略,下面 给出语句的4种基本变形。 (1)表达式1移至FOR语句前,但它后面的分号必 须保留。这时FOR语句的形式为: 表达式1; FOR(; 表达式2; 表达式3) 语句
(2)表达式3移至循环体语句之后,但它前面的分 号必须保留。FOR语句的形式为: FOR(表达式1; 表达式2;) { 语句; 表达式3; } 对于求P=5!的程序段,省略表达式3,将其放在循环 体中,则程序段写成:
C语言程序设计:第5章 循环结构

执行过程: 先执行循环体语句,再检查 循环条件表达式的值是否为真, 如果为真则继续执行循环体语句, 否则结束循环。
12
do...while语句(cont...)
课堂练习: 1.输出1---n之间的数,其中n从键盘输入。
int main(void) {
//1.定义变量i和n //2.输入n的值 //3.思考循环的开始条件:i从1开始 //4.思考循环的结束条件:i++,i > n //5.循环的条件:i<=n //6.循环要做的事情:输出i的值 return 0; }
} 相当于 while(1) {
}
26
小结
❖for(i=m;i<n;i++)//循环次数:n-m次 ❖for(i=m;i<=n;i++)//循环次数:n-m+1次
27
循环语句的练习
课堂练习: 1.输出n---1之间的数,其中n>1且n从键盘输入。 2.计算1*2*3*...*n的值(n的阶乘n!), 其中n从键盘输入。 3.计算10- 1/2 - 1/3 -....1/n的值 以上练习分别以while、do...while、for语句实现
int main(void) {
//1.定义变量i,n,sum //2.输入n的值 //3.思考循环的开始条件:i从1开始 //4.思考循环的结束条件:i++,i > n //5.循环的条件:i<=n //6.循环要做的事情:累加i的值 //7.输出计算结果 return 0; }
24
for语句(cont...)
{
sum = sum + i;
if(sum > 100)break;
12
do...while语句(cont...)
课堂练习: 1.输出1---n之间的数,其中n从键盘输入。
int main(void) {
//1.定义变量i和n //2.输入n的值 //3.思考循环的开始条件:i从1开始 //4.思考循环的结束条件:i++,i > n //5.循环的条件:i<=n //6.循环要做的事情:输出i的值 return 0; }
} 相当于 while(1) {
}
26
小结
❖for(i=m;i<n;i++)//循环次数:n-m次 ❖for(i=m;i<=n;i++)//循环次数:n-m+1次
27
循环语句的练习
课堂练习: 1.输出n---1之间的数,其中n>1且n从键盘输入。 2.计算1*2*3*...*n的值(n的阶乘n!), 其中n从键盘输入。 3.计算10- 1/2 - 1/3 -....1/n的值 以上练习分别以while、do...while、for语句实现
int main(void) {
//1.定义变量i,n,sum //2.输入n的值 //3.思考循环的开始条件:i从1开始 //4.思考循环的结束条件:i++,i > n //5.循环的条件:i<=n //6.循环要做的事情:累加i的值 //7.输出计算结果 return 0; }
24
for语句(cont...)
{
sum = sum + i;
if(sum > 100)break;
C语言循环语句PPT课件

i=1; while(i<=100) { sum=sum+i;
i++; } printf("%d",sum); }
循环条件
循环终值 循环体语句
27.12.2020
.
6
例: 显示1~10的平方
#include <stdio.h> main() { int i=1;
while(i<=10) { printf("%d*%d=%d\n",i,i,i*i);
}
while()
{ ……
}
…...
27.12.2020
.
}
14
例: 我国古代数学家张丘建在《算经》中出了一道题“鸡翁一, 值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡, 问鸡翁、鸡母、鸡雏各几何?”
解题思路:
利用以前学过的数学知识列方程。 假设鸡翁数为x,鸡母数为y,鸡雏数为z。列方程为:
x+y+z=100 ……① 5x+3y+z/3=100……②
do
……
continue;
…...
真(非0)
while 表达式
表达式 假(0) 真(非0)
…… continue;
……
表达式3
假(0)
27.12.2020
.
25
例:把100~200之间的不能被3整除的数输出
main()
{
int n;
for(n=100;n<=200;n++)
{if(n%3==0)
continue;
3、 while和do-while循环的循环变量初值应在 while和do-while循环之前完成。
i++; } printf("%d",sum); }
循环条件
循环终值 循环体语句
27.12.2020
.
6
例: 显示1~10的平方
#include <stdio.h> main() { int i=1;
while(i<=10) { printf("%d*%d=%d\n",i,i,i*i);
}
while()
{ ……
}
…...
27.12.2020
.
}
14
例: 我国古代数学家张丘建在《算经》中出了一道题“鸡翁一, 值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡, 问鸡翁、鸡母、鸡雏各几何?”
解题思路:
利用以前学过的数学知识列方程。 假设鸡翁数为x,鸡母数为y,鸡雏数为z。列方程为:
x+y+z=100 ……① 5x+3y+z/3=100……②
do
……
continue;
…...
真(非0)
while 表达式
表达式 假(0) 真(非0)
…… continue;
……
表达式3
假(0)
27.12.2020
.
25
例:把100~200之间的不能被3整除的数输出
main()
{
int n;
for(n=100;n<=200;n++)
{if(n%3==0)
continue;
3、 while和do-while循环的循环变量初值应在 while和do-while循环之前完成。
第五章 C语言break语句和continue语句

Enter m,n:14,8<CR> gcd=2
用穷举法求最大公约数
分析:两个数的最大公约数肯定不会比其中的小者大。
main( ) {int m, n, r ; printf("Enter m, n: "); scanf("%d,%d", &m, &n); r=m<n?m:n; /*取m, n中的小者*/ while (r>1) {if(m % r==0 && n % r==0 ) break; /*找到r即为最大公约数,中止循环。*/ r = r-1; /*从大到小穷举出所有可能的数*/ } printf("gcd(%d,%d)=%d\n",m,n, r); }
#include "math.h" main( ) {int n; float t, s, pi; pi=0; /*变量pi用来存放累加和*/ n=1; /*第一项的分母值为1*/ s=1.0; /*第一项的分子值为+1*/ t= s/n; /*先求出第一项的值*/ while (fabs(t)>=0.0001) { pi=pi+t; n+=2; s= -1* s; t= s/n; /*递推出下一项的值*/ } printf("pi=%f\n", pi*4) ; 程序执行后输出以下结果。 pi=3.141397 }
题目: 有一根长度为323米的钢材料,要将它截取成两种 例 5.12 长材料截取短料的最优化方法 规格a、b的长度分别为17米和27米的短料, 每种至少1段, 问分隔成a, b各多少段后,剩余的残料 r 最少? 分析: 规格a的钢材料的个数na可能为: 1、2、3、……(321-27)/17。 main( ) {int na, nb, a, b, r, rmin; na=1; nb=1; rmin=323-17-27; for (na=1; na<=(323-27)/17; na++) { nb=(323-na*17)/27; 运行结果如下: r =323-na*17-nb*27; a=11, b=5, min=1 if (r< rmin) {rmin=r; a=na; b=nb; } } printf("a=%d, b=%d, min=%d\n", a, b, rmin ); }
用穷举法求最大公约数
分析:两个数的最大公约数肯定不会比其中的小者大。
main( ) {int m, n, r ; printf("Enter m, n: "); scanf("%d,%d", &m, &n); r=m<n?m:n; /*取m, n中的小者*/ while (r>1) {if(m % r==0 && n % r==0 ) break; /*找到r即为最大公约数,中止循环。*/ r = r-1; /*从大到小穷举出所有可能的数*/ } printf("gcd(%d,%d)=%d\n",m,n, r); }
#include "math.h" main( ) {int n; float t, s, pi; pi=0; /*变量pi用来存放累加和*/ n=1; /*第一项的分母值为1*/ s=1.0; /*第一项的分子值为+1*/ t= s/n; /*先求出第一项的值*/ while (fabs(t)>=0.0001) { pi=pi+t; n+=2; s= -1* s; t= s/n; /*递推出下一项的值*/ } printf("pi=%f\n", pi*4) ; 程序执行后输出以下结果。 pi=3.141397 }
题目: 有一根长度为323米的钢材料,要将它截取成两种 例 5.12 长材料截取短料的最优化方法 规格a、b的长度分别为17米和27米的短料, 每种至少1段, 问分隔成a, b各多少段后,剩余的残料 r 最少? 分析: 规格a的钢材料的个数na可能为: 1、2、3、……(321-27)/17。 main( ) {int na, nb, a, b, r, rmin; na=1; nb=1; rmin=323-17-27; for (na=1; na<=(323-27)/17; na++) { nb=(323-na*17)/27; 运行结果如下: r =323-na*17-nb*27; a=11, b=5, min=1 if (r< rmin) {rmin=r; a=na; b=nb; } } printf("a=%d, b=%d, min=%d\n", a, b, rmin ); }
C语言中 循环结构 ppt课件

int main() {
return 0;
}
10
5.2 for语句
for语句的一般形式如下:
for(表达式1;表达式2;表达式3) 循环体语句
说明:for语句属于“计数”型循环。
表达式1
表达式2 真(非0)
循环体语句
假(0)
表达式3
for语句流程图
12
For语句最常用、最简单的形式
• for(循环变量赋初值;循环条件;循环变量增值)
C语言中 循环结构
第五章 循环控制结构
2
本章知识点:
–while语句的一般形式及应用 –for语句的一般形式及应用 –do...while语句的一般形式及应用 –多重循环结构的使用
•break语句和continue语句
3
5.1 while语句
语句的一般形式如下: while (表达式) 循环体语句
return 0;
}
6
• 需要注意的几个问题:
(1)累加求和算法。这个程序采用的算法思想 称为累加求和,即:不断用新累加的值取代变 量的旧值,最终得到求和结果,变量sum也叫 “累加器”,初值一般为0。
(2)必须给变量赋初值。 (3)正确判断条件的边界值。 (4) 避免出现“死循环”。 (5)可能出现循环体不执行。 (6)while后面圆括号内的表达式一般为关系表
【例5.1】 求前100个自然数的和 。
#include <stdio.h> int main() {
int n,sum=0; for (n=1;n<=100;n++)
sum=sum+n; printf("sum=%d\n",sum); retur,计算并输出S(n)的值。 S(n)=(1*2)/(3*4)-(3*4)/(5*6)+(5*6)/(7*8)+…+(-1)(n-
C语言 第五章-循环结构程序设计

sum = 0 ; i = 1 ; for ( ;i <= 100 ; i ++ ) sum = sum + i ; i ++ )
例如: 例如:
例如: 例如:
for ( sum = 0 , i = 1 ; ; sum = sum + i ; for ( sum = 0 , i = 1 ; { sum = sum + i ; i ++ ; }
scanf ( “ %d ” , & num ) ; 其中: 表达式2 为算术表达式num num为 其中 : 表达式 2 为算术表达式 num % 2 。 当 num 为 奇数时循环执行scanf 奇数时循环执行scanf ( “ %d ” , & num )。
for语句一般形式中的 语句” 语句一般形式中的“ (3) for语句一般形式中的“语句”部分就是循环 它可以是一个单语句,也可以是一个复合语句。 体,它可以是一个单语句,也可以是一个复合语句。 如果不加{ },系统只将 for后面的一个单语句作为 系统只将for 如果不加 { }, 系统只将 for 后面的一个单语句作为 循环体。 循环体。 例如: 例如:for ( i = 1 ; { a = a + 1 ; b = b + 1 ; } i <= 10 ; i ++)
分析:九九乘法表 分析: 1× 1= 1 1× 2= 2 1× 3= 3 2× 1= 2 2× 2= 4 2× 3= 6 3× 1= 3 3× 2= 6 3× 3= 9 … … 9×1=9 9×2=18 9×3=27 … 9×9=81 … … … 1× 9= 9 2×9=18 3×9=27
假设行号用i 标识, 列号用j 标识, 则第i 行 假设行号用 i 标识 , 列号用 j 标识 , 则第 i 列的值正好就是i 的乘积。 第 j 列的值正好就是 i 与 j 的乘积 。 i 与 j 定义为整 型变量。 型变量。
例如: 例如:
例如: 例如:
for ( sum = 0 , i = 1 ; ; sum = sum + i ; for ( sum = 0 , i = 1 ; { sum = sum + i ; i ++ ; }
scanf ( “ %d ” , & num ) ; 其中: 表达式2 为算术表达式num num为 其中 : 表达式 2 为算术表达式 num % 2 。 当 num 为 奇数时循环执行scanf 奇数时循环执行scanf ( “ %d ” , & num )。
for语句一般形式中的 语句” 语句一般形式中的“ (3) for语句一般形式中的“语句”部分就是循环 它可以是一个单语句,也可以是一个复合语句。 体,它可以是一个单语句,也可以是一个复合语句。 如果不加{ },系统只将 for后面的一个单语句作为 系统只将for 如果不加 { }, 系统只将 for 后面的一个单语句作为 循环体。 循环体。 例如: 例如:for ( i = 1 ; { a = a + 1 ; b = b + 1 ; } i <= 10 ; i ++)
分析:九九乘法表 分析: 1× 1= 1 1× 2= 2 1× 3= 3 2× 1= 2 2× 2= 4 2× 3= 6 3× 1= 3 3× 2= 6 3× 3= 9 … … 9×1=9 9×2=18 9×3=27 … 9×9=81 … … … 1× 9= 9 2×9=18 3×9=27
假设行号用i 标识, 列号用j 标识, 则第i 行 假设行号用 i 标识 , 列号用 j 标识 , 则第 i 列的值正好就是i 的乘积。 第 j 列的值正好就是 i 与 j 的乘积 。 i 与 j 定义为整 型变量。 型变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
unsigned n,i=1,sum=0; scanf(“%u”,&n); do { sum+=i ; i++; } while(i<=n);
一、for语句的语法格式:
for(表达式1;表达式2;表达式3) 循环体
二、说明:
1.表达式1和表达式3是算式表达式,表达式2是条件; 2.循环体由语句构成,以实现某种功能。
aver=total/N; /*10个儿童的平均体重*/
printf(“%d个儿童的平均体重是:%.2\n”,N,aver); }
循环结构是结构化程序设计的基本结构之一。 C语言中的循环结构可以用以下语句实现: 1. while 循环
2. do-while 循环
3. for 循环
一、while语句的语法格式:
四、for语句的功能:
当表达式2为非0时重复执行循环体。
例:求1—100之内偶数和。 main( ) { int i , sum=0; for( i=1; i<100;i++ ) if( i%2==0 )sum+=i; printf(“1--100之内偶数=%d”,sum); }
五、使用for语句的注意事项:
for(表达式1;表达式2;表达式3) { … for(表达式1;表达式2;表达式3) { … } … } while(条件1) { … do { … } while(条件2); … }
while(条件) { … for(表达式1;表达式2;表达式3) { … } … } do { … while(条件2) { … } … } while(条件1);
#include <stdio.h> void main( ) { int n,i,sum=0; scanf(“%u”,&n); i=1; while(i<=n) { sum+=i ; i++; } printf(“1—%u sum=%d",n,sum); }
例:从键盘输入正整数n,求n! #include <stdio.h> main( ) { unsigned n,i=1; long factorial=1; scanf(“%u”,&n); while( i<=n ) { factorial=factorial*I; i++; } printf( “%u!=%ld”,n, factorial ); }
例:从键盘输入正整数n,求 1+2+3+...+n。
#include <stdio.h> void main( ) { int i; unsigned n,sum=0; scanf(“%u”,&n); for(i=1;i<=n;i++) sum+=i ; printf(“1—%u sum=%d",n,sum); }
程序段2: sum=i=0; while(i<10) { ++i; sum+=i; } 想一想执行程序段1和程序段2后 i、sum的值?
3.在循环体中应有使循环趋于结束的语句。
i=1; sum=0; while(i<10) { sum+=i; ++i; }
考虑以下while循环的执行情况: i=1; sum=0; while(i<10) sum+=i;
4、do-while语句的功能:
执行循环体,直到表达式为0。
注意事项:
1.do-while 语句的特征是“先执行,后判断”;循环体最 少执行一次。
2.对于同一个问题, 既可以用 while语句 ,也可以用 do-while语句处理。 3.特别要注意while后加分号 ; 4.while和do-while循环的比较: unsigned n, i=1,sum=0; scanf(“%u”,&n); while(i<=n) { sum+=i ; i++; }
4.应避免无限循环、永不执行的循环、执行次数不正确 的循环等情况.
5.对于嵌套的循环语句,应写成缩进对齐格式,以增加 程序结构的清晰感和美感.
当一个循环体内又包含另一个完整的循环结构时,就称 为循环的嵌套
while(条件1) { … while(条件2) { … } … }
do { … do { … } while(条件2); … } while(条件1);
for (i=1,sum=0; i<=100; i++) sum=sum+i ;
表达式1 表达式2
0
非0
循环体 表达式3
for循环控制流程图
三、执行过程:
1.求解表达式1; 2.求解表达式2,若为非0则执行第3步;否则执行第5步;
3.执行循环体;
4.求解表达式3,然后返回第2步; 5.结束循环,执行for语句的下一语句。
for(i=1,sum=0;i<=n; sum+=i++) ;
6.逗号表达式的最主要的用处: 让程序员使用多个初始化表达式和多个值递增表达式, 这在for语句中表现为表达式1和表达式3都是逗号表达式。 for(i=1,j=100,sum=0;i<j;i++,j--) sum+=i+j;
六、循环语句的使用要点:
1.循环体含一个以上语句时,必须以复合语句的形式出现; 当循环体为空时不要掉了分号(;)。 2.注意循环控制变量的初值及其修改,以保证循环正常 执行和正常结束。 3.可以在循环体中安排使表达式变为”0”的语句,也可以 通过表达式本身实现这种控制功能。 for( i=1; i<=n; i++) if(! ( i%2 ) ) sum = sum + i; for( i=1; i<=n; ) { if( ! ( i%2 ) ) sum = sum + i; i++ ; }
/*第8个儿童的体重*/ /*前8个儿童的总体重*/ /*第9个儿童的体重*/ /*前9个儿童的总体重*/ /*第10个儿童的体重*/ /*10个儿童的总体重*/ /*10个儿童的平均体重*/
printf(“%d个儿童的平均体重是:%.2\n”,N,aver);
}
#define N 10 #include “stdio.h” main( ) { /*定义变量存放某儿童体重、总体重和平均体重*/ int i; float Weight, total=0, aver; *输入N个儿童的体重并计算总体重*/ for(i=1;i<=N;i++) { scanf(“%f”,&Weight); /*第i个儿童的体重*/ total=total+ Weight; /*i个儿童的总体重*/ }
scanf(“%f”,&Weight); total=total+ Weight; scanf(“%f”,&Weight); total=total+ Weight;
/*第3个儿童的体重*/ /*前3个儿童的总体重*/ /*第4个儿童的体重*/ /*前4个儿童的总体重*/
scanf(“%f”,&Weight); total=total+ Weight; scanf(“%f”,&Weight); total=total+ Weight;
do { … for(表达式1;表达式2;表达式3) { … } … } while(条件); for(表达式1;表达式2;表达式3) { … while(条件) { … } … }
for(表达式1;表达式2;表达式3) { … do { … } while(条件); … }
scanf(“%f”,&Weight); total=total+ Weight;
/*第5个儿童的体重*/ /*前5个儿童的总体重*/ /*第6个儿童的体重*/ /*前6个儿童的总体重*/
/*第7个儿童的体重*/ /*前7个儿童的总体重*/
scanf(“%f”,&Weight); total=total+ Weight; scanf(“%f”,&Weight); total=total+ Weight; scanf(“%f”,&Weight); total=total+ Weight; aver=total/N;
while(表达式) 循环体
表达式 非0
0
循环体
while循环控制流程图
二、执行过程:
1.计算while后圆括号内表达式的值,为非0则执行第② 步,否则执行第③步; 2.执行循环体,然后返回第①步;
3.结束循环,执行while语句的下一语句。
例6-2:从键盘输入正整数n,求 1+2+3+...+n。
一、do-while语句的语法格式:
do 循环体 while( 表达式 );
循环体语句
真
表达式
假
do-while循环控制流程图
二、执行过程:
1.执行循环体; 2.求解while后圆括号内的表达式,若为非0则返回第1步;否 则执行第3步;
3.结束循环,执行do-while语句的下一语句。
例6-4:从键盘输入正整数n,求 1+2+3+...+n。
学习内容:
1、循环控制概述 2、goto语句和goto循环 3、while循环
4、do-while循环 5、for循环
6、循环的嵌套 7、几种循环结构的比较
8、辅助控制语句 9、循环结构程序设计举例
学习目标:
1、熟练掌握while、do-while和for语句及三种循环之间 的嵌套和区别。