《循环结构程序设计》PPT课件
合集下载
C语言程序设计循环结构程序设计幻灯片
![C语言程序设计循环结构程序设计幻灯片](https://img.taocdn.com/s3/m/db9c1c60e53a580217fcfe66.png)
printf("%d\n",su
m);
2021/5/15
x
求: s n 流程图 n 1
17
开始
void main()do while {
int n=1,s=0,x; scanf("%d",&x); do {s=s+n; n++;} while (n<=x); printf("s=%d\n",s); }
一般为关系表达式 或逻辑表达式,也 可以是C语言其他类 型的合法表达式
用来控制循环体是 否被执行
称为内嵌语句,可 以是基本语句、控 制语句,也可以是 复合语句
是循环重复执行的 部分
2021/5/15
9
语句一般格式 while (表达式) {语句组}
功能:计算“表达式〞的值,为非0〔逻辑 真〕时,重复执行内嵌语句,每执行一次, 就判断一次表达式的值,直到表达式的值 为0 时完毕循环,转去执行while后面的语 句。
void main() {int s=0,x; scanf("%d",&x); while (x<=10)
{s=s+x; 循环没有 x++;} 被执行
printf("s=%d\n",s)p; rintf("s=%d\n",s);
}
}
如输入为1和12,两程序各输出情况
输入12时: 输出
输出:s=0
2021/5/15
2021/5/15
do-while循环的算法
16
流程图
循环体
N-S结构图 循环体
当表达式为真
实验03 循环结构程序设计 ppt课件
![实验03 循环结构程序设计 ppt课件](https://img.taocdn.com/s3/m/dd162ec3a6c30c2259019ecb.png)
四、问题讨论 通过实验,你发现了什么问题?Do while循环中
为何不同的x值其迭代的次数明显不同?
2020/12/2
8
实验03 循环结构程序设计
一、实验目的 二、实验内容 三、注意事项 四、问题讨论
2020/12/2
1
一、实验目的
1、进一步掌握关系表达式和逻辑表达式; 2、掌握循环控制条件的描述;掌握三种循环结构的特征及
相互之间的等价转换;掌握DO、DO WHILE语句的语法规 则和使用要求; 3、掌握循环结构概念和循环结构程序设计方法。
2020/12/2
6
二、实验内容
2、在1500中,找出能同时满足用3除余2,用5除余3, 用7除余2的所有整数。编写程序实现之。(P194)
编程要求:利用DO循环语句和IF块语句实现。
2020/12/2
7
三、注意事项
(1)注意循环结构的特点,如DO循环、DO WHILE循环。 (2)注意循环结构与块IF语句混合使用的特点。
e e 要求输出 x 数值、 x 标准函数值EXP(x),以便对比
数据精度要求7位有效数字。
统计并输出do while循环中的迭代次数
(4)实验模型:
x = 0.8
n=5
x = -0.8
n=10
x = 50
n=100
(5)实验报告中只需画DO循环或do while循环中的一种流程图,
但2个源程序必须出现在报告中。
② 迭代种是根据级数第n项的绝对值小于事先给定的一个小正数eps(eps<=1E-7),迭
代就终止;(用Do While循环语句实现)
202一0/1种2/2是给定求和次数进行求和计算。(用DO循环语句实现)
为何不同的x值其迭代的次数明显不同?
2020/12/2
8
实验03 循环结构程序设计
一、实验目的 二、实验内容 三、注意事项 四、问题讨论
2020/12/2
1
一、实验目的
1、进一步掌握关系表达式和逻辑表达式; 2、掌握循环控制条件的描述;掌握三种循环结构的特征及
相互之间的等价转换;掌握DO、DO WHILE语句的语法规 则和使用要求; 3、掌握循环结构概念和循环结构程序设计方法。
2020/12/2
6
二、实验内容
2、在1500中,找出能同时满足用3除余2,用5除余3, 用7除余2的所有整数。编写程序实现之。(P194)
编程要求:利用DO循环语句和IF块语句实现。
2020/12/2
7
三、注意事项
(1)注意循环结构的特点,如DO循环、DO WHILE循环。 (2)注意循环结构与块IF语句混合使用的特点。
e e 要求输出 x 数值、 x 标准函数值EXP(x),以便对比
数据精度要求7位有效数字。
统计并输出do while循环中的迭代次数
(4)实验模型:
x = 0.8
n=5
x = -0.8
n=10
x = 50
n=100
(5)实验报告中只需画DO循环或do while循环中的一种流程图,
但2个源程序必须出现在报告中。
② 迭代种是根据级数第n项的绝对值小于事先给定的一个小正数eps(eps<=1E-7),迭
代就终止;(用Do While循环语句实现)
202一0/1种2/2是给定求和次数进行求和计算。(用DO循环语句实现)
C语言程序设计课件 第4章 循环结构.ppt
![C语言程序设计课件 第4章 循环结构.ppt](https://img.taocdn.com/s3/m/91f25909cc22bcd126ff0c9b.png)
10
while语句
语法形式:
while (表达0(式假)) 表达式?循环体;
非0(真) 循环体
后续语句
11
执行过程:
step1:求解表达式,若 为0(假),则退出循 环执行后续语句。若 为非0(真),则执行 循环体。
step2: 转回step1继续 判断。
while语句应用实例
【例4.3】从键盘上读入一个非0的整数,统计该数的
语句功能
{count++; number=number/10;
?
}
printf ("It contains %d digits.\n",count);
}
12
while语句应用实例
【例4.4】计算表达式a+aa+aaa+…+aaa…a,其中a与x的值从 键盘上输入。
int a,x;
long sum=0,n=1,tn;
scanf("%d,%d", &a,&x);
tn=a; while(n<=x) {sum+=tn; tn=tn*10+a; n++;
循环次数 第1次 第2次 第3次 第4次
循环条件 1<=4为真 2<=4为真 3<=4为真 4<=4为真
}
第5次
5<=4为假
sum值
tn值
n值
0+2
2*10+2
2
2+22
C语言程序设计
第4章 循环结构
本章主要内容
1. 循环结构设计理念 2. for循环语句 3. while循环语句 4. do…while循环语句 5. 循环嵌套 6. 流程控制语句
while语句
语法形式:
while (表达0(式假)) 表达式?循环体;
非0(真) 循环体
后续语句
11
执行过程:
step1:求解表达式,若 为0(假),则退出循 环执行后续语句。若 为非0(真),则执行 循环体。
step2: 转回step1继续 判断。
while语句应用实例
【例4.3】从键盘上读入一个非0的整数,统计该数的
语句功能
{count++; number=number/10;
?
}
printf ("It contains %d digits.\n",count);
}
12
while语句应用实例
【例4.4】计算表达式a+aa+aaa+…+aaa…a,其中a与x的值从 键盘上输入。
int a,x;
long sum=0,n=1,tn;
scanf("%d,%d", &a,&x);
tn=a; while(n<=x) {sum+=tn; tn=tn*10+a; n++;
循环次数 第1次 第2次 第3次 第4次
循环条件 1<=4为真 2<=4为真 3<=4为真 4<=4为真
}
第5次
5<=4为假
sum值
tn值
n值
0+2
2*10+2
2
2+22
C语言程序设计
第4章 循环结构
本章主要内容
1. 循环结构设计理念 2. for循环语句 3. while循环语句 4. do…while循环语句 5. 循环嵌套 6. 流程控制语句
第5章-循环结构程序设计PPT优秀课件
![第5章-循环结构程序设计PPT优秀课件](https://img.taocdn.com/s3/m/b9a6f18481eb6294dd88d0d233d4b14e84243e5d.png)
17
5.3.1 前测型Do…Loop循环语句
格式:
Do [While | Until <条件表达式>] <语句块> [Exit Do] <语句块>
Loop
18
5.3.1 前测型Do…Loop循环语句
前测型Do…Loop循环的流程图
Do While…Loop流程图
Do Until…Loop流程图
条件表达式 值为真?
格式:
Do <语句块> [Exit Do] <语句块>
Loop [While | Until <条件表达式>]
23
5.3.1 后测型Do…Loop循环语句
说明:
后测型Do…Loop循环语句与前测型Do…Loop循环语句的主 要区别在于:
后测型要先执行一次循环体,再判断条件;而前测型要 先判断条件,然后根据判断结果决定是否执行循环体。因此 对于后测型,不管条件是否满足,循环体至少有一次执行机 会。
16
5.3 Do…Loop循环语句
导入:
Do…Loop循环也属于条件型循环,即根据条件的 成立与否来决定是否执行循环。Do…Loop循环的应 用具有很强的灵活性,主要体现在:它既能指定循环 开始条件,又能指定循环结束条件;既能构成前测型 Do…Loop循环语句,又能构成后测型Do…Loop循 环语句。
25
5.3.1 后测型Do…Loop循环语句 【例5-10】将400~600间能够被3整除的数 输出(上机练习)
【例5-11】(略)
26
5.4 循环嵌套
介绍:
一个循环结构中又包含一个或多个循环结构被称为 循环嵌套,或称多重循环。 多重循环对嵌套的层数没有限制。有几层嵌套,就 称为几重循环,如二重循环、三重循环、四重循环 等。一般地,把嵌套在一个循环体内部的另一个循 环结构称为内循环;这样,嵌套了其他内循环部分 的循环结构就称为外循环。 为了使多重循环结构具有较好的可读性,通常用缩 进方式书写相应的源代码。
5.3.1 前测型Do…Loop循环语句
格式:
Do [While | Until <条件表达式>] <语句块> [Exit Do] <语句块>
Loop
18
5.3.1 前测型Do…Loop循环语句
前测型Do…Loop循环的流程图
Do While…Loop流程图
Do Until…Loop流程图
条件表达式 值为真?
格式:
Do <语句块> [Exit Do] <语句块>
Loop [While | Until <条件表达式>]
23
5.3.1 后测型Do…Loop循环语句
说明:
后测型Do…Loop循环语句与前测型Do…Loop循环语句的主 要区别在于:
后测型要先执行一次循环体,再判断条件;而前测型要 先判断条件,然后根据判断结果决定是否执行循环体。因此 对于后测型,不管条件是否满足,循环体至少有一次执行机 会。
16
5.3 Do…Loop循环语句
导入:
Do…Loop循环也属于条件型循环,即根据条件的 成立与否来决定是否执行循环。Do…Loop循环的应 用具有很强的灵活性,主要体现在:它既能指定循环 开始条件,又能指定循环结束条件;既能构成前测型 Do…Loop循环语句,又能构成后测型Do…Loop循 环语句。
25
5.3.1 后测型Do…Loop循环语句 【例5-10】将400~600间能够被3整除的数 输出(上机练习)
【例5-11】(略)
26
5.4 循环嵌套
介绍:
一个循环结构中又包含一个或多个循环结构被称为 循环嵌套,或称多重循环。 多重循环对嵌套的层数没有限制。有几层嵌套,就 称为几重循环,如二重循环、三重循环、四重循环 等。一般地,把嵌套在一个循环体内部的另一个循 环结构称为内循环;这样,嵌套了其他内循环部分 的循环结构就称为外循环。 为了使多重循环结构具有较好的可读性,通常用缩 进方式书写相应的源代码。
C语言第5章循环结构PPT课件
![C语言第5章循环结构PPT课件](https://img.taocdn.com/s3/m/d9023e1f5fbfc77da369b1c0.png)
格式:while (条件1)
3. 用for 语句实现循环 4. 循环的嵌套
5. break语句和continue语句 6. 几种循环的比较 7. 程 序 举 例
第2页/共63页
一、循环概述
3
第3页/共63页
在很多实际问题中会遇到有规律性的重复运算,因 此在程序中就需要将某些语句重复执行。 • 一组被重复执行的语句称为循环体; • 每重复一次,都必须作出是继续还是停止循环的决 定,这个决定所依据的条件称为循环条件;
do {
......
for(;;) { ......
}while();
}
47
第47页/共63页
例7. 打印乘法“九九表”
1 2 3 4 56 7 89 11 22 4 33 6 9 4 4 8 12 16 5 5 10 15 20 25 6 6 12 18 24 30 36 7 7 14 21 28 35 42 49 8 8 16 24 32 40 48 56 64 9 9 18 27 36 45 54 63 72 81
循环的概念 用while语句和do-while语句实现循环
用for 语句实现循环 循环的嵌套
break语句和continue语句 几种循环的比较 程序举例
第44页/共63页
循环的嵌环中还可以嵌套循环,这就是多重循环。
循环1
循环2
28
第28页/共63页
29
第29页/共63页
(2):从高位到低位求每一位。
30
第30页/共63页
(3):从低位到高位求每一位。
31
第31页/共63页
循环结构程序设计
1. 循环的概念 2. 用while语句和do-while语句实现循环
3. 用for 语句实现循环 4. 循环的嵌套
5. break语句和continue语句 6. 几种循环的比较 7. 程 序 举 例
第2页/共63页
一、循环概述
3
第3页/共63页
在很多实际问题中会遇到有规律性的重复运算,因 此在程序中就需要将某些语句重复执行。 • 一组被重复执行的语句称为循环体; • 每重复一次,都必须作出是继续还是停止循环的决 定,这个决定所依据的条件称为循环条件;
do {
......
for(;;) { ......
}while();
}
47
第47页/共63页
例7. 打印乘法“九九表”
1 2 3 4 56 7 89 11 22 4 33 6 9 4 4 8 12 16 5 5 10 15 20 25 6 6 12 18 24 30 36 7 7 14 21 28 35 42 49 8 8 16 24 32 40 48 56 64 9 9 18 27 36 45 54 63 72 81
循环的概念 用while语句和do-while语句实现循环
用for 语句实现循环 循环的嵌套
break语句和continue语句 几种循环的比较 程序举例
第44页/共63页
循环的嵌环中还可以嵌套循环,这就是多重循环。
循环1
循环2
28
第28页/共63页
29
第29页/共63页
(2):从高位到低位求每一位。
30
第30页/共63页
(3):从低位到高位求每一位。
31
第31页/共63页
循环结构程序设计
1. 循环的概念 2. 用while语句和do-while语句实现循环
Python程序设计循环结构程序设计ppt课件
![Python程序设计循环结构程序设计ppt课件](https://img.taocdn.com/s3/m/109a263f0740be1e650e9add.png)
1-21
第6次上机作业: 1.计算,参考值: S=1.718282
S 1 1 1
1
1*2 1*2*3
1*2*3* 50
2.编程求斐波拉契数列的前20项,已知该数列
的第一、二项分别0、1,从第三项开始,每
一项都是前两项之和。例如:0, 1, 1, 2, 3, 5,
8, 13……
3.求1~100之间所有的素数,并统计素数的 个数。
(1)顺序结构(2)选择结构(3)循环结构
顺序结构 —— 是指程序流程按先后顺序执行,只有执行
了前一步,才能执行后一步。例如火车在轨道上行驶,只 有过了上一站点才能到达下一站点。
选择结构 —— 又称分支结构,是指程序流程可以分几条
路径执行。例如在一个十字路口处,可以选择向东、南、 西、北几个方向行走。
程序:
#Exp4_4.py
a_list = ['a', 'b', 'mpilgrim', 'z', 'example']
i 小于列表长度吗? True
输出列表元素
False
i 自增 1
结束 图 4-6 依次输出列表元素的框图
Copyright © SWFU-CISD, 2012. All rights reserved.
a_len = len(a_list)
i=0
while i < a_len: print '列表的第', i+1, '个元 素是:', a_list[i]
i += 1
1-20
练习:
1. 求1+3+5+…+99 2. 求2*4*6*…*12
第5章 循环结构程序设计PPT课件
![第5章 循环结构程序设计PPT课件](https://img.taocdn.com/s3/m/3b1c6859bed5b9f3f90f1c5a.png)
}
C语言程序设计
第5章 循环结构程序设计
§ 5.2 用while语句实现循环i=1w; hile (i<=100)
2、while语句的注意事项
{ sum=sum+i;
注意:
i++; }
(1) 循环体如果包含一个以上的语句,应该用花括弧括
起来,以复合语句形式出现
(2) 在循环体中应有使循环趋向于结束的语句。如果无
C语言程序设计
第5章 循环结构程序设计
§ 5.2 用while语句实现循环
1、while语句的一般形式
while语句用来实现“当型”循环结构 一般形式: while (表达式)
循环体语句
当表达式为非0值时,执行while 语句中的循环体语句 其特点是:
先判断表达式,后执行语句
C语言程序设计
第5章 循环结构程序设计
} 运行结果:
}
1↙ sum=55 再运行一次:
}说明:当while后面的表达式的第一次的
值为“真”时,两种循环得到的结果相
11↙ sum=0
同。否则,二者结果不相同
C语言程序设计
第5章 循环结构程序设计
§ 5.4 用for语句实现循环
1、for语句的一般形式
C语言中的for语句使用最为灵活,不仅可以用于 循环次数已经确定的情况,而且可以用于循环次数 不确定而只给出循环结束条件的情况,它完全可以 代替while语句
语句,转到第(5)步
(3) 求解表达式3
(4) 转第(2)步骤继续执行
(5) 循环结束,执行for语句下面的一个语句
C语言程序设计
第5章 循环结
执行表达式1
循环初始条件
《循环程序设计》课件
![《循环程序设计》课件](https://img.taocdn.com/s3/m/dd7b6f5553d380eb6294dd88d0d233d4b14e3f09.png)
避免死循环的方法
在编写循环程序时,应确 保循环终止条件在某个时 刻能够满足,或者在循环 体内有退出循环的语句。
死循环的危害
死循环会导致程序无法正 常结束,消耗大量的系统 资源,甚至可能导致系统 崩溃。
提高循环的效率
循环优化原则
在保证程序正确的前提下,尽可能减少循环次数,提高循环的执 行效率。
减少循环体内的计算
冒泡排序算法的时间复杂度
冒泡排序的时间复杂度为O(n^2),其中n为待排序的元素个数。因为冒泡排序需要重复遍 历整个列表,每次遍历都需要进行n次比较和交换操作。
斐波那契数列的求解
斐波那契数列的定义
斐波那契数列是一个数列,其中每个数字是前两个数字的和。第一个数字和第二个数字都是1,之后的每个数字都是 前两个数字的和。
《循环程序设计》ppt 课件
目录
• 循环程序设计概述 • 循环控制结构 • 循环嵌套 • 循环程序设计的实际应用 • 循环程序设计的优化与调试
01
循环程序设计概述
循环的定义与特点
总结词
描述循环的定义、特点以及在程序中的作 用。
嵌套循环
循环可以嵌套在其他循环内部,形成多层 循环结构。
详细描述
循环是一种重复执行一段代码的程序结构 ,它允许在满足特定条件时重复执行代码 块。循环具有以下特点
斐波那契数列的求解
在Python中,可以使用循环来计算斐波那契数列中的每个数字。具体实现过程是,定义两个变量分别表示前两个数 字,然后使用一个循环来计算斐波那契数列中的每个数字,直到达到所需的数字为止。
斐波那契数列的递归实现
另一种实现方法是使用递归。递归的实现方式是,定义一个函数来计算斐波那契数列中的第n个数字,然 后在函数中调用自身来计算前两个数字的和。递归的实现方式虽然简洁,但是效率较低,因为需要重复 计算相同的数字。
循环结构的程序实现课件(共27张PPT)浙教版(2019)高中信息技术必修1
![循环结构的程序实现课件(共27张PPT)浙教版(2019)高中信息技术必修1](https://img.taocdn.com/s3/m/50dcd98c32d4b14e852458fb770bf78a65293ae3.png)
xb='女' else:
xb='男' print("您的出生日期为:",a[6:10],'年',a[10:12],'月',a[12:14],'日,性 别为',xb)
练一练,请完成889页第7题
练一练,请完成89页第7题
random.randint(a,b)
for i in range(100, 1000):
b = i // 100
s=
g = i % 10
if
:
print(i)
划线处①的程序是 i // 10% 10 ,划线处②的程序是i == b**3 + s**3。+ g**3
练一练,请完成89页第3题
a=input('请输入身份证号:') if int(a[16])%2==0:
请用for循环求1~100的和:
请用for循环求1~100所有偶数的和(书上89页第4题):
方法一:
请用for循环求1~100所有偶数的和(书上89页第4题):
方法二:
循环结构的程序实现
while循环语句格式
循环体是一条或多条语句,当条件为真时, 循环体重复执行;当条件为假时,循环终止 。
P83 问题与讨论
练一练
1.输出程序运行结果
sum=0 for i in range(1,11):
sum=sum+i print(sum)
i=1,sum=0
N
i<=10
sum=sum+i i+=1
输出sum的值
练一练
2. 有如下程序段:
s=0
for i in range(1, 11, 2):
xb='男' print("您的出生日期为:",a[6:10],'年',a[10:12],'月',a[12:14],'日,性 别为',xb)
练一练,请完成889页第7题
练一练,请完成89页第7题
random.randint(a,b)
for i in range(100, 1000):
b = i // 100
s=
g = i % 10
if
:
print(i)
划线处①的程序是 i // 10% 10 ,划线处②的程序是i == b**3 + s**3。+ g**3
练一练,请完成89页第3题
a=input('请输入身份证号:') if int(a[16])%2==0:
请用for循环求1~100的和:
请用for循环求1~100所有偶数的和(书上89页第4题):
方法一:
请用for循环求1~100所有偶数的和(书上89页第4题):
方法二:
循环结构的程序实现
while循环语句格式
循环体是一条或多条语句,当条件为真时, 循环体重复执行;当条件为假时,循环终止 。
P83 问题与讨论
练一练
1.输出程序运行结果
sum=0 for i in range(1,11):
sum=sum+i print(sum)
i=1,sum=0
N
i<=10
sum=sum+i i+=1
输出sum的值
练一练
2. 有如下程序段:
s=0
for i in range(1, 11, 2):
C语言循环结构程序设计PPT课件
![C语言循环结构程序设计PPT课件](https://img.taocdn.com/s3/m/3e0c8244a7c30c22590102020740be1e650ecc05.png)
知识点精讲
printf(″%d\n″,fun(″056a0″)); } 【解析】 while循环是先判断条件,如果条件成立就执行语句,然后回到条件继续判断,直 到条件不成立就结束循环。while后的表达式为“*s<=′9′&&*s>=′0′”,当表达式的值为0时 循环结束,可以看出这道题就是把连续的数字字符转换成对应的数值,遇到非数字字符就结束, 所以最后的输出结果是56。 【答案】 56
知识点ቤተ መጻሕፍቲ ባይዱ讲
L7 i++; L8 } L9 printf("%f",s); L10 }
答案:第6行改成:{ s=s+1.0/i; //若不使用1.0/i,那么会把小数部分丢掉//
4.下列程序的运行结果是______2_,_-_1_____ #include "stdio.h" main) {int i=2,a=0; while ( i一) a++; printf ("% d,%d",a,i); }
第四章 循环结构程序设计
考纲要求
结构化程序的设计方法,for语句、while语句编程方法。
知识准备
高频考点:当型循环与直到型循环、循环控制变量、利用循环设计算法。 重难点分析:利用循环设计算法。
知识点精讲
知识点1 while循环
真题回顾 (2019年真题)下列程序的运行结果是___________ #include″stdio.h″ int fun(char s[]){ int n=0; while(*s<=′9′&&*s>=′0′) { n=10*n+*s-′0′; s++; } return n; } main(){
《循环结构程序设计》课件
![《循环结构程序设计》课件](https://img.taocdn.com/s3/m/3b7cf48e59f5f61fb7360b4c2e3f5727a5e9248e.png)
for循环结构的执行流程
总结词
详细描述for循环结构的执行流程,包括初始化、条件判断、循环体执行和更新四个步 骤。
详细描述
for循环结构的执行流程包括四个步骤。首先,进行初始化操作,设置循环变量的初始 值。然后,进行条件判断,检查是否满足循环继续的条件。如果条件满足,执行循环体 内的语句。最后,进行更新操作,修改循环变量的值,然后再次进行条件判断,重复执
while循环结构的注意事项
总结词
关键点全覆盖
详细描述
使用while循环结构时需要注意以下几点,首先,条件表达式必须保证在某个时刻变为假,否则循环 将无限进行下去;其次,在循环体内应包含使条件表达式最终变为假的操作;最后,应避免在循环体 内使用使条件表达式永远为真的操作。
04
do-while循ห้องสมุดไป่ตู้结构
do-while循环结构的语法
总结词:简洁明了
详细描述:do-while循环结构的语法包括"do"关键字、"while"关键字、循环体和条件表达式。语法 格式为"do {循环体} while (条件表达式);"
do-while循环结构的执行流程
总结词:逻辑清晰
详细描述:do-while循环结构的执行流程是先执行一次循环 体,然后判断条件表达式,如果条件表达式为真,则再次执 行循环体,否则退出循环。循环体会一直执行直到条件表达 式不再满足为止。
循环结构的应用实例
用for循环计算1到100的累加和
总结词:简单明了
详细描述:通过使用for循环,我们可以轻松地计算从1到 100的所有整数的累加和。在每次循环中,我们将当前数 字添加到总和中,直到我们达到100。
循环结构程序设计PPT课件
![循环结构程序设计PPT课件](https://img.taocdn.com/s3/m/bcee4411ad51f01dc381f154.png)
2020/12/29
3
6.1 问题的提出
利用前面所学的知识,同学们已经可以编程解决 以下问题
计算班级3名学生的总成绩及平均成绩 计算sum=1+2+3+4+5 如果在第1题里是一个班级30名同学的成绩呢? 如果在第2题里是计算sum=1+2+3+…+n-1+n (n=1000)呢?
2020/12/29
}
2020/12/29
19
6.4 for语句
一般形式 for([表达式1];[表达式2];[表达式3]) 语句 此处无;
for
执行流程
表达式1
表达式2
假(0)
真(非0)
语句
执行表达式1 当表达式2为真时
do 语句
while(表达式);
do
此处有;
真(非0)
语句
语句
当表达式为真时
while
表达式
假(0)
特点:先执行循环体内语句,后判断表达式
2020/12/29
15
100
例:用do~while循环求 n n 1
#include <stdio.h> int main() { int n,sum=0;
{ int i,sum=0;
{ int i,sum=0;
scanf("%d",&i);
scanf("%d",&i);
do
while(i<=10)
{ sum+=i;
{ sum+=i;
i++;
i++;
}while(i<=10);
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
{ sum=sum+i;
i++;
}
printf("sum=%d\n",sum);
}
程序输出结果:
sum=5050
可整理ppt
注意:
7
如果while的 (表达式) 值为0,则循环体一
次也不执行 (例如当i的初值=101) 。
在循环体中必须有使循环趋向结束的操作, 否则循环将无限进行(死循环)。
在循环体中,语句的先后位置必须符合逻 辑,否则会影响运算结果。
求和——设变量 sum 存放和,循环求 sum=sum+i,直至i超过100。
可整理ppt
算法和程序:
6
i=1,sum=0 当i <= 100
sum=sum+i i++ 输出sum
i: 循环控制变量 sum: 累加器
main( )
运行jc5_1
{ int i,sum;
i=1; sum=0;
while (i<=100)
区别:
– do- while 语句先执行句先判断条件再执行循环体, 循环体有可能一次也不执行
do—while循环体中一定要有能使表达式值 趋于0的操作(如i++),否则会出现死循环。
可整理ppt
do-while语句的简单应用
12
【例5.3】用辗转相除法求m和n的最大公约数
Y
表达式非0?
N
用do-while语句 求100个自然数的和
main( ) { int i=1,sum=0;
do { sum=sum+i;
i++; } while (i<=100); printf("%d\n",sum); }
可整理ppt
说明:
11
while和do-while都能实现循环控制,while 结构程序通常都可以转换成do-while结构
定义m、n、r
m<n
T
F
m和n交换
r=m%n
m=n
n=r
当r != 0时
输出最大公约数m
可整理ppt
算法和程序:
13
main( ) 运行jc5_3
{ int m,n,r;
scanf("%d, %d",&m,&n);
if (m<n)
{ r=m; m=n; n=r; }
do
{ r=m%n; m=n; n=r;
9
语句一般格式
do 语句 while (表达式);
功能:
– 先执行内嵌语句(循环体),之后计算 表达式的值,不为0(逻辑真)时,再 执行循环体并判断条件,直到表达式的 值为 0 结束循环,转去执行while下面 的语句。
可整理ppt
do-while循环的算法
10
流程图
N-S结构图
循环体
循环体 当表达式为真
⑶ for (i=1; i<=100; ) {…i++; … }
⑷ i=1; for ( ; ; ) { … if(i>100) … i++; … }
可整理ppt
说明:
18
所有用 while 语句实现的循环都可以用 for 语句实现。
for(表达式1;表达式2 ;表达式3) 语句;
等价于:
表达式1; while (表达式2) { 语句;
思考程序段的输出?
……
while (i<=100)
{ i++;
sum=sum+i; }
可整理ppt
运行后,输出: sum=5150
原因是什么?
注意(续):
8
为了保证循环正常运行,应该特别注意: – 循环控制条件的描述 – 控制条件的初始状态(初始值) – 循环体内部对控制条件的影响
可整理ppt
5.2 do-while语句
printf("sum=%d\n",sum);
}
可整理ppt
省略for语句的表达式
16
⑴ 表达式1、2、3全省略,即: for ( ; ; )
就等同于:while (1),会无限循环(死循环)
⑵ 省略表达式1和表达式3,即: for(;表达式2;)
就等同于:while( 表达式2 ) ⑶ 省略表达式2,即:
一般为关系表达式 或逻辑表达式,也 可以是C语言其他类 型的合法表达式
用来控制循环体是 否执行
称为内嵌语句, 可以是基本语句、 控制语句,也可 以是复合语句
是循环重复执行 的部分
可整理ppt
功能:
4
计算表达式的值,为非0(逻辑真)时,重复执
行内嵌语句,每执行一次,就判断一次表达式的
值,直到表达式的值为0 时结束循环,转去执行
可整理ppt
for语句的算法
15
流程图
N-S结构图
计算表达式1
表达式2
N
为真?
Y 语句
计算表达式3
for (表达式1;表达式2;表达式3) 语句
例如:
可部分或全部省略,
main( ) { int i,sum;
但“;”不可省略
sum=0;
for ( i=1; i<=100; i++)
sum=sum+i;
C 语言程序设计
第5章 循环结构程序设计
本章主要内容
2
while循环控制 do-while循环控制 for循环控制 用goto语句实现循环控制 循环结构中的跳转语句 循环的嵌套 循环结构程序设计举例
可整理ppt
5.1 while循环控制
3
语句一般格式 while (表达式) 语句
for(表达式1; ;表达式3) 就等同于:表达式1; while(1){…表达式3;}
注意:在省略某个表达式时,应在适当位置进行循 环控制的必要操作,以保证循环的正确执行
可整理ppt
例如:
17
⑴ i=1; for ( ; i<=100; i++) sum+=i;
⑵ for (i=1; ; i++) { … if(i>100)… …}
while后面的语句。
循环控制条件
流程图
N-S结构图
表达式非
N
0?
Y
语句
当表达式为真 语句
循环体
可整理ppt
例如:
5
【例5.1】编写程序,求100个自然数的和 即: s=1+2+3+ … +100
思路:寻找加数与求和的规律
加数i——从1变到100,每循环一次,使i增1, 直到i的值超过100。i的初值设为1。
表达式3; }
可整理ppt
for语句的简单应用
}while(r!=0);
程序运行情况如下: 24, 60 12
printf("%d\n",m);
}
可整理ppt
5.3 for语句
14
语句一般格式
循环控制条件
for (表达式1;表达式2;表达式3) 语句
循环初始条件
循环体
功能:
–计算表达式1的值,再判断表达式2,如果其 值为非0(逻辑真),则执行内嵌语句(循环 体),并计算表达式3;之后再去判断表达式2, 一直到其值为0时结束循环,执行后续语句。