第六章循环控制解读
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
goto语句
一般形式
goto 语句标号
功能:程序执行顺序无条件跳转到语句标号处 说明
语句标号用标识符表示。 goto语句常用环境:
和if语句一起构成循环结构; 从多重循环内层跳转到循环体外。
4
goto语句示例
用if语句和goto语句 构成循环,求
100
n
n 1
#include<stdio.h> void main(void) {
sum+=i; i++; }while (i<=100); printf("%d\n", sum); }
10
do-while语句和while的区别
与while语句基本相同,一点差别在于:
while语句是先判断再确定是否进入循环体; do-while先执行一次指定循环体语句再判断。P117例
当while后面表达式第一次值为"真",两种循环完 全相同;否则不同。
若为真,则执行for 语句中的内嵌语句
3.求解表达式3 4.转回第2步 5.for 循环结束, 继续执行for语句的
下一语句。
表达式1; while(表达式2) {
语句 表达式3; }
12
for语句
100
例:用for语句求 n n 1 void main(void)
{
int i, sum;
1*3=3 … 2*3=6… 3*3=9…
1*9=9 2*9=18 3*9=27
9*9=81
for语句注意
(1)表达式1既可以是给循环变量赋初值
也可以是与循环变量无关的表达式; 如:5!
p=1;
i=2;
for(i=2;i<6;i++) 可改写为: for(p=1;i<6;i++)
p=p*i;
p=p*i;
int i, sum=0; i=1; loop: if(i<=100) {
sum+=i; i++; goto loop; } printf("%d\n", sum); }
5
while语句
一般形式: while(表达式) 语句
功能:
当
表达式 真
假 语句
表达式成立(值非 0 )?
语句
6
while语句使用举例
8
do-while语句
do-while语句的一般形式为: do 语句 while (表达式)
语句 真
表达式 假
直到…不
9
100
用do-while语句来实现 n n 1
start
sum=0 i=1
sum=sum+i i=i+1
T
i<=100
F
end
#include<stdio.h> void main(void) { int i, sum=0; i=1; do {
printf("\n");
} }
Demo603.c
9*9=81
21
1*1=1 2*1=2 3*1=3 …… 9*1=9
1*2=2 2*2=4 3*2=6
1*3=3 … 2*3=6… 3*3=9…
9*2=18 9*3=27……
1*9=9 2*9=18
9*9=81
1*1=1 ……
1*2=2 2*2=4
100
[例6.2]求
n
n 1
#include<stdio.h> void main(void) {
int i,sum=0; i=1; while(i<=100) {
sum+=i; i++; } printf("%d\n",sum); }
7
while语句的注意
循环体包含多个语句时,要使用语句块的形式。 在循环体内应该有使循环趋于结束的语句。
sum=0;
表达式1
for (i=1; i<=100; i++) sum+=i;
printf("the result is %d ",sum); }
表达式2
表达式3
i=1; while(i<=100) {
sum+=i; i++; }
13
for语句一般用法
for语句常用形式
for(循环变量赋初值;循环条件;循环变量增值)
三种基本程序结构
顺序结构 选择结构 循环结构
1
第六章 循环控制
概述 goto语句、用goto语句构成循环结构 用while语句构成循环结构 用do-while语句构成循环结构 用for语句构成循环结构 break语句与continue语句 程序举例
2
概述
循环控制应用例子:
输入全校学生成绩; 求若干个数之和; 迭代求根; 排序; 播放音乐、视频
(2)for语句中表达式1是可省略的:若省略表达式1则需 在for语句前相应位置给相应变量赋初值;
如:5!可改写为: p=1; i=2; for(;i<6;i++) p=p*i;
注意 ; 不能省略!
23
(3)for语句中表达式2也可省略,即不判断循环条件,循环 无终止地进行下去。如:for(i=1;;i++) sum+=i;
19
20
for语句使用举例-编程并输出乘法表
1*1=1
2*1=2 2*2=4
void main(void) {
int i,j;
3*1=3 …… 9*1=9
3*2=6 3*3=9 9*2=18 9*3=27……
for( i=1; i<=9; i++) {
for( j=1; j<=i; j++)
printf(”%d*%d=%d ”, i, j, j*i );
#include <stdio.h> int main(void) { int i;
for(i=1;i<=5;i++); printf("*");
}
15
程序举例:打印图形
***** ***** ***** *****
16
程序举例:打印图形
* ** *** ****
17
程序举例:打印图形
18
for语句使用举例-编程并输出乘法表
又例:n!可用for语句描述如下:
p=1;
i=2;
for(i=2; i<=n; i++)
for(;;)
p*=i;
{
p*=i;
i++;
if(i>n) break;
}
14
程序举例:打印图形
*****
#include <stdio.h> int main(void) {
printf("*****"); }
在使用中,使用"当"和"直到…不"来进行区别。
Biblioteka Baidu11
for 语句的一般形式:
for语句 for (表达式1;表达式2;表达式3) 语句
for语句的流程图如下:
for语句改写为while语句如下:
求解表达式1 判断表达式2
语句 求解表达式3
执行过程
1先求解表达式1; 2求表达式2,
若为假,则中止for 循环
goto语句
一般形式
goto 语句标号
功能:程序执行顺序无条件跳转到语句标号处 说明
语句标号用标识符表示。 goto语句常用环境:
和if语句一起构成循环结构; 从多重循环内层跳转到循环体外。
4
goto语句示例
用if语句和goto语句 构成循环,求
100
n
n 1
#include<stdio.h> void main(void) {
sum+=i; i++; }while (i<=100); printf("%d\n", sum); }
10
do-while语句和while的区别
与while语句基本相同,一点差别在于:
while语句是先判断再确定是否进入循环体; do-while先执行一次指定循环体语句再判断。P117例
当while后面表达式第一次值为"真",两种循环完 全相同;否则不同。
若为真,则执行for 语句中的内嵌语句
3.求解表达式3 4.转回第2步 5.for 循环结束, 继续执行for语句的
下一语句。
表达式1; while(表达式2) {
语句 表达式3; }
12
for语句
100
例:用for语句求 n n 1 void main(void)
{
int i, sum;
1*3=3 … 2*3=6… 3*3=9…
1*9=9 2*9=18 3*9=27
9*9=81
for语句注意
(1)表达式1既可以是给循环变量赋初值
也可以是与循环变量无关的表达式; 如:5!
p=1;
i=2;
for(i=2;i<6;i++) 可改写为: for(p=1;i<6;i++)
p=p*i;
p=p*i;
int i, sum=0; i=1; loop: if(i<=100) {
sum+=i; i++; goto loop; } printf("%d\n", sum); }
5
while语句
一般形式: while(表达式) 语句
功能:
当
表达式 真
假 语句
表达式成立(值非 0 )?
语句
6
while语句使用举例
8
do-while语句
do-while语句的一般形式为: do 语句 while (表达式)
语句 真
表达式 假
直到…不
9
100
用do-while语句来实现 n n 1
start
sum=0 i=1
sum=sum+i i=i+1
T
i<=100
F
end
#include<stdio.h> void main(void) { int i, sum=0; i=1; do {
printf("\n");
} }
Demo603.c
9*9=81
21
1*1=1 2*1=2 3*1=3 …… 9*1=9
1*2=2 2*2=4 3*2=6
1*3=3 … 2*3=6… 3*3=9…
9*2=18 9*3=27……
1*9=9 2*9=18
9*9=81
1*1=1 ……
1*2=2 2*2=4
100
[例6.2]求
n
n 1
#include<stdio.h> void main(void) {
int i,sum=0; i=1; while(i<=100) {
sum+=i; i++; } printf("%d\n",sum); }
7
while语句的注意
循环体包含多个语句时,要使用语句块的形式。 在循环体内应该有使循环趋于结束的语句。
sum=0;
表达式1
for (i=1; i<=100; i++) sum+=i;
printf("the result is %d ",sum); }
表达式2
表达式3
i=1; while(i<=100) {
sum+=i; i++; }
13
for语句一般用法
for语句常用形式
for(循环变量赋初值;循环条件;循环变量增值)
三种基本程序结构
顺序结构 选择结构 循环结构
1
第六章 循环控制
概述 goto语句、用goto语句构成循环结构 用while语句构成循环结构 用do-while语句构成循环结构 用for语句构成循环结构 break语句与continue语句 程序举例
2
概述
循环控制应用例子:
输入全校学生成绩; 求若干个数之和; 迭代求根; 排序; 播放音乐、视频
(2)for语句中表达式1是可省略的:若省略表达式1则需 在for语句前相应位置给相应变量赋初值;
如:5!可改写为: p=1; i=2; for(;i<6;i++) p=p*i;
注意 ; 不能省略!
23
(3)for语句中表达式2也可省略,即不判断循环条件,循环 无终止地进行下去。如:for(i=1;;i++) sum+=i;
19
20
for语句使用举例-编程并输出乘法表
1*1=1
2*1=2 2*2=4
void main(void) {
int i,j;
3*1=3 …… 9*1=9
3*2=6 3*3=9 9*2=18 9*3=27……
for( i=1; i<=9; i++) {
for( j=1; j<=i; j++)
printf(”%d*%d=%d ”, i, j, j*i );
#include <stdio.h> int main(void) { int i;
for(i=1;i<=5;i++); printf("*");
}
15
程序举例:打印图形
***** ***** ***** *****
16
程序举例:打印图形
* ** *** ****
17
程序举例:打印图形
18
for语句使用举例-编程并输出乘法表
又例:n!可用for语句描述如下:
p=1;
i=2;
for(i=2; i<=n; i++)
for(;;)
p*=i;
{
p*=i;
i++;
if(i>n) break;
}
14
程序举例:打印图形
*****
#include <stdio.h> int main(void) {
printf("*****"); }
在使用中,使用"当"和"直到…不"来进行区别。
Biblioteka Baidu11
for 语句的一般形式:
for语句 for (表达式1;表达式2;表达式3) 语句
for语句的流程图如下:
for语句改写为while语句如下:
求解表达式1 判断表达式2
语句 求解表达式3
执行过程
1先求解表达式1; 2求表达式2,
若为假,则中止for 循环