循环结构PPT学习课件

合集下载

第4章 循环结构(C++版)ppt课件

第4章  循环结构(C++版)ppt课件

第一节 for语句
三、语句格式举例
(1)将控制变量从1变到100,增量为1 for(i=1;i<=100;++i)
(2)将控制变量从100变到1,增量为-1 for(i=100;i>=1;--i)
(3)控制变量从7变到77,增量为7 for(i=7;i<=77;i+=7)
(4)控制变量从20变到2,增量为-2 for(int i=20;i>=2;i-=2)
【上机练习】
•8.满足条件的数【1.5编程基础之循环控制08】 • 将正整数m和n之间(包括m和n)能被17整除的数累加,其中0<m<n<1000。 •输入: • 一行,包含两个整数m和n,其间,以一个空格间隔。 •输出: • 输出一行,包行一个整数,表示累加的结果。 •样例输入: • 50 85 •样例输出: • 204
for (int i=2; i<=100 ; i+=2) cout << i << " "; return 0; }
例4.2 利用for循环,计算输出1+2+…+100的和 #include <iostream> using namespace std; int main () {
int sum=0; for (int i=1; i<=100 ; ++i)
第一节 for语句
• 二、语句执行过程 • for语句的执行过程可由以下4步来描述。 • (1)执行“控制变量初始化语句”,使控制变量获得一个初
值。 • (2)判断控制变量是否满足“条件表达式”,若满足条件则
执行一遍循环体,否则结束整个for语句,继续执行for循 环下面的句子。 • (3)根据增量表达式,计算出控制变量所得到的新值 • (4)自动转到第(2)步。

C语言第5章循环结构PPT课件

C语言第5章循环结构PPT课件
格式: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语句实现循环

流程图(循环结构)PPT课件

流程图(循环结构)PPT课件
循环变量循环变量的后继10成立成立不成立当型循环直到型循环先执行循环体然后再检查条件是否成立如果不成立就重复执行循环体直到条件成立退出循环
流程图---循环结构
1
问题:北京获得了2008年第29届奥林匹克运动 会主办权.你知道在申办奥运会的最后阶级,国际 奥委会是如何通过投票决定主办权归属的吗?
用怎样的算法结构表述上面的操作过程? S1: 投票; S2:统计票数,如果有一个城市得票超过总票 数的一半,那么该城市就获得主办权,转S3, 否则淘汰得票数最少的城市,转S1; S3: 宣布主办城市.
开始
S1 S 1 ; 2
S 2 i 1;
S3 S 1 ; 2+S
S 4 i i 1; S 5 如 果 i大 于 5, 则 输 出 S,
算 法 结 束 , 否 则 转 S3
S←1/2
i←1
S←1/(2+S)
i ← i +1 i>5 N Y 输出S
结束
12
设计一个计算10个数的平均数的算法.
解:S1 S←0
把0赋值给变量S;
S2 I←1
把1赋值给变量I;
S3 输入G
输入一个数;
S4 S←S+G
把S+G赋值给变量S;
S5 I←I+1
把I+1赋值给变量I;
S6 如果I不大于10,转S3 转到S3循环;
S7 A←S /10
把S/10存放到A中;
S8 输出A 13
设计一个求1+2+4+7+…+46的算法,并画出相应 的程序框图.
6


循环体

环 结
满足条件? Y

《循环结构》幻灯片PPT

《循环结构》幻灯片PPT

for(i=1;i<10;i++)
123456789
printf("%5d",i);
----------------------------------------------------------
printf("\n");
----------
for(i=1;i<=46;i++)
123456789
for(i=1;i<=100;)
{ sum+=i;
i++;
} 上述for语句中没有表达式3,而是将表达式3〔i++〕放在循环语句中, 作用一样,都能使用循环正常完毕。注意表达式2后面的分号不能省略。 〔4〕也可以同时省略表达式1和表达式3,即: for〔;表达式2;〕
循环语句; 也即省略了循环的初值和循环变量的修改局部,此时完全等价于while 语句。
时,假设二者的循环体一样,运行结果也就一样。 但当while后面表达式的值一开场就为0时,两种 循环构造的结果是不一样的。
※重点提示:do-while语句先执行语句,后判断 表达式的值。故do-while语句又称“直到型〞循环 构造。由于是先执行后判断,因此do-while语句的 循环语句至少被执行一次。
5.2 do-while语句和用do-while语句构成的循环构造
do-while是另一种循环构造,它的一般形式为: do
循环语句; while〔表达式〕;
以下是几点说明:
1.do是C语言的关键字,必须和while联合使用。 2.在while〔表达式〕后的分号“;〞不可丢,它 表示do-while语句的完毕。 3.while后括号中的表达式可以是任意合法的表达 式,由它来控制循环是否执行。 4.do-while之间的循环体可以是一条可执行语句也 可以是由“{}〞构成的符合语句。

循环结构课件(42张)

循环结构课件(42张)

C.i≤9
D.i<9
【解析】选B.第一次循环:S=0+ 1 , n=4,i=2;
2
第二次循环:S=0+ 1 + 1 , n=6,i=3;
24
第三次循环:S=0+ 1 + 1 + 1 , n=8,i=4;
246

第十次循环:S=0+ 1+1+1++1,n=22,i=11.
246
20
此时已得到所求,故应结束循环.所以应填i>10.
2.3 循环结构
1.循环结构的有关概念 (1)定义:反复执行相同操作的结构. (2)组成
【思考】 循环结构有哪些特点?
提示:循环结构有三个特点: ①重复性:在一个循环结构中,总有一个过程要重复 一系列的步骤若干次,而且每次的操作完全相同. ②判断性:每个循环结构都包含一个判断条件,它决 定这个循环的执行与终止. ③可终止性:循环结构的循环体要根据条件是否成立 才执行,故在判断框中的条件在循环体中要改变,否 则循环体不执行或无限期执行(死循环),这不符合程 序设计要求.
(2)在循环结构中,要注意根据条件设置合理的计数变 量,累加(乘)变量,同时条件的表述要恰当、精确. (3)累加变量的初值一般为0,而累乘变量的初值一般 为1,累加(乘)和计数一般是同步进行的,累加(乘)一 次,计数一次.
【习练·破】 设计一个算法,求1×2×3…×100的值,并画出算法 框图.
类型一 循环结构算法框图的识别与解读
【典例】1.当m=7,n=3时, ( )
A.7
B.42
C.210
D.840
2.执行如图所示的算法框图,若输入n的值为3,则输 出s的值是 ( )
A.1
B.2
C.4

《循环结构程序设计》课件

《循环结构程序设计》课件

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。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include <iostream> using namespace std; int main ()
公约数可以采用辗转相除 法。以下是辗转相除法的
{
算法:分别用m,n,r表
int m,n,r; cin>>m>>n; r =m % n;
示被除数、除数、余数; 1、求m除以n的余数r;
while (r!=0)
13
第二节 while语句 (二)格式举例:
(1) i=0; while (i<10) ++i;
功能:当i的值小于10,重复执行++i语句
(2) cin>>x; while(x<0) cin>>x;
功能:当输入的数据小于0时,重复读数据。
14
第二节 while语句 (三)例题分析:
例4.5 求s=1 +2 +3……+n,当加到第几项时,s的值会超过1000?
}
10
第一节 for语句 (四)例题分析:
例5: 输入‘A’到‘Z’中的任一个字符,输出如下回文 串。如:输入‘B’,则输出ABA;输入‘E’,则输出 ABCDEDCBA。 分析:该回文串可以分为两个部分
如输入为‘E’时,分为ABCDE和DCBA两部分 可以用两个循环语句,循环变量可以先从‘A’循环到 ‘E’,再从‘D’循环到‘A’
(1)将控制变量从1变到100,增量为1 for(i=1;i<=100;++i)
(2)将控制变量从100变到1,增量为-1 for(i=100;i>=1;--i)
(3)控制变量从7变到77,增量为7 for(i=7;i<=77;i+=7)
3
第一节 for语句 (二)语句格式举例:
(4)for(int i=20;i>=2;i-=2) 控制变量从20变到2,增量为-2
12
第二节 while语句 (一)格式及流程图:
while (表达式) { 语句1;
语句2;
}
只要表达式的值为非0,就重复执行语 句,直到表达式值为0时止
表达假式 假

语句
二、语句执行过程 (1)计算作为循环控制条件表达式的值,得到逻辑真或假,假 定用M表示。 (2)若M为真,则执行了一遍循环体,否则离开循环,结束整个 while语句的执行。 (3)循环体的所有语句执行结束后,自动转向第(1)步执行。
2、当r!=0,执行第3步;
{ //也可以使用 while (r),c++中 非0即真 m=n;
若r==0,则n为最大公约
n=r;
数,算法结束。
r=m % n;
3、将n的值赋给m,将r的
} cout<<"最大公约数="<<n<<endl;
值赋给n;再求m除以n的
return 0;
余数r。
}
4、转到第2步
cout << a+b <<endl; return 0; }
21
第二节 while语句 (四)上机练习:
1.球弹跳高度的计算【1.5编程基础之循环控制17】 一球从某一高度h落下(单位米),每次落地后反跳回原来高度的一半,
再落下。编程计算气球在第10次落地时,共经过多少米? 第10次反弹多高? 输出包含两行,第1行:到球第10次落地时,一共经过的米数。第2行:
例4.4 利用for循环,分别计算1—100中奇数的和、偶数的和。
#include <iostream>
using namespace std;
int main ( ){
int jssum=0;
int ossum=0;
for (int js=1,os=2;js<=99&&os<=100;js+=2 ,os+=2 )
s*=i;
//若s定义为int,当n=13时s的值就溢出了
printf(“%lld\n”,s); //低版本也可用printf("%l64d\n",s)
return 0;
}
8
第一节 for语句 (四)例题分析:
【说明】: 当n>=13时,s值超过了int类型的表示范围。还有一种比 int更大的类型,称为long long,它的表示范围是-263~ 263-1,比-1019~1019略窄,而我们一直使用的int范围是231~231-1,只比-2*109~2*109略宽。
#include <iostream> using namespace std; int main () {
int n=0,s=0; while (s<=1000) {
++n; s+=n; } cout<<n; return 0; }
15
第二节 while语句 (三)例题分析:
例4.6 求两个正整数m,n的最大公约数。 分析:求两个整数的最大
while (Leabharlann canf("%d",&x)==1)
{
s+=x;
if (x<min) min=x;
if (x>max) max=x;
++n;
}
printf("%d %d %.3lf\n",min,max,(double)s/n);
return 0;
19
第二节 while语句 (三)例题分析:
【优化程序】 #include<cstdio> #define INF 100000000 int main() {
输入输出long long也可以借助于printf和scanf语句, 但对应的占位符却是和平台与编译器相关的:在linux中, gcc很统一的用%lld;在windows中,MinGW的gcc和VC6 可用%I64d;高版本编译器下windows可以使用%lld。
9
第一节 for语句 (四)例题分析:
#include <cstdio>
using namespace std;
int main ()
{
long long s; //Noip2010开始long long类型允许使用
int n; //n不能定义为long long,否则for语句死循环
s=1;
scanf("%d",&n);
for (int i=1; i<=n ; ++i)
20
第二节 while语句 (三)例题分析:
最后,我们来更仔细地研究一下输入输出。研究对象就是经典的 “A+B”问题:输入若干对整数,输出每对之和。假设每个整数不超过 109,一共不超过106个数对
第1种方法是:
#include<cstdio> int main() {
int a,b; while(scanf("%d%d",&a,&b)==2)
printf("%d\n",a+b); return 0; }
第2种方法也许更加常用(你再 也不用记住%d、%lf等恼人的占 位符了):
#include<iostream> using namespace std; int main() {
int a,b; while(cin >> a >> b )
第10次弹跳的高度。 输入: 输入一个整数h,表示球的初始高度。 输出: 第1行:到球第10次落地时,一共经过的米数。
第2行:第10次弹跳的高度。
注意:结果可能是实数,结果用double类型保存。
提示:输出时不需要对精度特殊控制,用cout << ANSWER,或者 printf("%g", ANSWER)即可。
#include <iostream> using namespace std; int main () {
for (int i=2; i<=100 ; i+=2) cout << i << " "; return 0; }
6
第一节 for语句 (四)例题分析:
例4.2 利用for循环,计算输出1+2+…+100的和
++i; s+=1.0/i; } cout<<i; return 0; }
分析:此题不等式的左边是一个 求和的算式,该和式中的数据项 个数是未知的,也正是要求出的。 对于和式中的每个数据项,对应 的通式为1/i,i=1,2,…n。 所以可采用循环累加的方法来计 算出它的值。设循环变量为i,它 应从1开始取值,每次增加1,直 到和式的值不小于5为止,此时的 i值就是所求的n。设累加变量为s, 在循环体内把1/i的值累加到s上。
{ jssum+=js;
ossum+=os; }
cout <<“the sum of odd numbers 1 to 100 is : ”
<<jssum<<endl;
cout << “the sum of even numbers 1 to 100 is : "
<<ossum<<endl;
return 0;
16
第二节 while语句 (三)例题分析:
例4.7 编一程序求满足不等式1+ 1/2 + 1/3 …+1/n >=5的最小n值。
相关文档
最新文档