全国计算机等级考试2C课程第5讲 循环结构程序设计.ppt

合集下载

C语言第5章-循环结构程序设计PPT课件

C语言第5章-循环结构程序设计PPT课件
sum=sum+i i++
当i<=10 (直到i>10) 输出sum
#include "stdio.h" int main() {
int i,sum; i=1; sum=0; do { sum=sum+i; i++; }while(i<=10);
至少执 行一次
循环体语句
真 表达式 假
说明
printf("sum=%5d\n",sum); return 0;
7
举例
例5.2 设s=1×2×3×……×n,求s不大于400000时 最大的n。
#include <stdio.h>
int main( )
{ int n=1; long int s=1;
前n项的乘积
P81
while(s<=400000)
{
n=n+1;
s=s*n;
}
printf("不大于400000时的最大n为:%d\ns值为:%ld\n",n-1,s/n);
输入:1 输出:sum=55 输入:11 输出:sum=0
sum=55 sum=11
什么情况下两 者结果相同?
11
§5.3 for语句
P87
格式 for (表达式1;表达式2;表达式3) 语句
for (循环变量赋初值;循环条件;循环变量增值) 语句
执行 过程
求解表达式1
假 表达式2
真 循环体语句
求解表达式3
一、实现循环结构的控制语句 二、循环嵌套 三、循环结构程序举例
1
• while语句 • do-while语句 • for语句 • break、continue语句 • 几种循环的比较

第5章 循环结构程序设计PPT教学课件

第5章 循环结构程序设计PPT教学课件

Private Sub Command1_Click()
a = ""
For n = 1 To 1000
If n Mod 37 = 0 Then
a = a & Str(n) & vbCrLf
End If
Next
Text1.Text = a End Sub
图5-13 能被37整除的自然数
2020/12/10
这里仅给出命令按钮的Click事件代 码:
Private Sub Command1_Click()
图5-2 求累加和
Dim s As Integer, n As Integer s = 0: n = 1 Do While n <= 100 s=s+n n=n+1 Loop Label2.Caption = "1+2+3+…+100 = "&s End Sub 还可以改为直到型:
End Sub
2020/12/10
5
文本框Text1的GotFocus事件代码:
Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub
5.3 For...Next语句
其语法为 For〈循环变量〉=〈初值〉To〈终值〉[Step〈步长〉]
(1) 建立应用程序用户界面与设置对象属性。 (2) 编写程序代码。 根据流程图,可以写出命令按钮Command1的Click事 件代码为
Private Sub Command1_Click()
Dim m As Integer

第5章-循环结构程序设计PPT优秀课件

第5章-循环结构程序设计PPT优秀课件
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 循环嵌套
介绍:
一个循环结构中又包含一个或多个循环结构被称为 循环嵌套,或称多重循环。 多重循环对嵌套的层数没有限制。有几层嵌套,就 称为几重循环,如二重循环、三重循环、四重循环 等。一般地,把嵌套在一个循环体内部的另一个循 环结构称为内循环;这样,嵌套了其他内循环部分 的循环结构就称为外循环。 为了使多重循环结构具有较好的可读性,通常用缩 进方式书写相应的源代码。

计算机二级C语言第05章课件

计算机二级C语言第05章课件

5.1 概述
5.2 goto语句以及用goto语句构成循环
goto语句为无条件转向语句,它的一般形式为 goto 语句标号; 语句标号用标识符表示,它的定名规则与变量名相 同,即由字母、数字和下划线组成,其第一个字符 必须为字母或下划线。不能用整数来做标号。例如: goto label_1; 是合法的,而 goto 123; 是不合法的。结构化程序设计方法主张限制使用goto 语句,因为滥用goto语句将使程序流程无规律、
例5.4 while和do-while循环的比较。 (1) main ( ) (2) main( ) { int sum=0,i; { int sum=0,i; scanf(‚%d‛,&i); scanf("%d",&i); while (i<=10) do { sum=sum+i; { sum=sum+i; i++; i++; } }while (i<=10) printf(‚sum=%d‛,sum); printf(‚sum=%d‛,sum); } }
如for(;i<=100;i++) sum=sum+i;执行时,跳过‚求 解表达式1‛这一步,其他不变。 (2) 如果表达式2省略,即不判断循环条件,循环无 终止地进行下去。也就是认为表达式2始终为真。见图 5.7。 例如: for(i=1; ;i++) sum=sum+i; 表达式1是一个赋值表达式,表达式2空缺。它相当于: i=1; while(1) { sum=sum+1; i++; }
图5.1
图5.2
例5.2求∑n。用传统流程图和NS结构流程图表示 n=1 算法,见图5.2(a)和图5.2(b)。 根据流程图写出程序: main() { int i,sum=0; i=1; while (i<=100) { sum=sum+i; i++; } printf("%d",sum); }

第5章 循环结构程序设计PPT课件

第5章 循环结构程序设计PPT课件

}
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
循环初始条件

C语言全国计算机二级等级考试教程循环结构章节带习题PPT课件

C语言全国计算机二级等级考试教程循环结构章节带习题PPT课件
n++; } printf(“%d\n”,s); }
while(n<=100) 问:循环体共执行了几次?
18
第2页/共18页
5.2 do-while语句和用do-while语句构成的循 环结构
5.2.1 do-while语句构成的循环结构
do-while循环结构的一般形式:
关键字
do 循环体
while(表达式);
C 26 68
D 39 81
第13页/共18页
习题
二.填空题 5.11 当执行以下程序段后,i的值是____5___.j的值是____4__.k的值是____6___. int a,b,c,d,i,j,k; a=10;b=c=d=5;i=j=k=0; for( ;a>b;++b) i++; while(a>++c) j++; do k++; while(a>d++); 5.12 以下程序段的输出结果是___1_0_2_4____. int k,n,m; n=10;m=1;k=1; while(k++<=n) m*=2; printf("%d\n",m); 5.13 以下程序的输出结果是____-1____. #include <stdio.h> main() {int x=2; while(x--); printf("%d\n",x); }
}
printf("%d\n",s);
程序段的输出结果是
A9
B1
C 11
5.2 有以下程序段: C
int i,j,m=0;

C语言程序设计第5章-循环结构程序设计ppt课件

C语言程序设计第5章-循环结构程序设计ppt课件
分析:循环进行的条件是:i≤k和flag=0。因为在i>k时, 显然不必再去检查n是否能被整除,此外如果flag=1, 就表示n已被某一个数整除过,肯定是非素数无疑, 也不必再检查了。只有i≤k和flag=0两者同时满足才 需要继续检查。循环体只有一个判断操作:判断n 能否被i整除,如不能,则执行i=i+1,即i的值加1, 以便为下一次判断作准备。如果在本次循环中n能 被i整除,则令flag=1,表示n已被确定为非素数了, 这样就不再进行下一次的循环了。如果n不能被任 何一个i整除,则flag始终保持为0。因此,在结束 循环后根据flag的值为0或1,分别输出n是素数或非 素数的信息。
while(i<=k && !flag)
if(n % i==0) flag=1;
else i=i+1;
if(!flag)
printf("%d is a prime
number.\n",n);
else
printf("%d is not a prime
number.\n",n);
}
.
返回本章首页
第5章 循环结构程序设计
【例5_1】用while语句求p=n!
#include<stdio.h>
int main()
{ int i=1,p=1; //循环初始化部分 while(i<=5) //循环控制部分
{ p=p*i; //循环体语句 i++; //循环修改部分
}
printf("5!=%d\n",p);
return 0;
10-3,则再执行循环体,把 term 值赋给term1.然后再累加 到s中去。可以看出:程序中 term1代表当前要累加的项, term代表下一项,如果这两项 之差未超过10-3,就将下一项 加到s 中。

第五章循环结构程序设计.ppt

第五章循环结构程序设计.ppt
循环体
2020/4/16
5.1.1 while语句(举例)
7
【例5.1】编写程序,求100个自然数的和 即: s=1+2+3+ … +100
思路:寻找加数与求和的规律
加数i——从1变到100,每循环一次,使i增1,直到i的 值超过100。i的初值设为1。
求和——设变量 sum 存放和,循环求sum=sum+i, 直至i超过100。
5.1.1 while语句(举例)
11
【例5.2】编写程序,从键盘输入字符,直到输入
的字符为0时停程止序,统计输入的字符个数。
思路:
#include <stdio.h> void main( )
{ 求累加和:确定c变ha量r clehn;,初值为0
确定循环条件:in输t 入len字=符0;不为0,即getchar()!=‘0’ printf("请输入字符:\n");
自学: P58例4-1; P61例4-2。
while((ch=getchar())!=‘0’) { putchar(ch);
len++; } printf("字符个数为:%d\n", len);
} 2020/4/16
5.1.2 do-while语句
12
语句一般格式 do 语句 while (表达式);
{ sum=sum+i; i++; }
printf("sum=%d\n",sum); }
2020/4/16
注意:
9
如果while的 (表达式) 值为0,则循环体一次也不执行 (例如当i的初值=101) 。

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

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

2021年1月11日星期一
5
第5章 循环结构程序设计
2.while语句的执行过程 首先计算表达式的值,如果为真(非0),执行循环体,再判断 表达式。如果表达式的值为假(0),结束循环,执行while语 句后面的语句。while语句的执行流程图如下: while语句的特点是: 先判断表达式,为真才执行循环体语句, 否则不执行。
修改为
int i=1; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);i++; printf("%d\n",i);
第5章 循环结构程序设计
问题:要求在屏幕上按行打印1~10。
可采用顺序结构写10行代码实现。程序代码如下:
printf("%d\n",1 ); printf("%d\n",2 ); printf("%d\n",3 ); printf("%d\n",4 ); printf("%d\n",5 ); printf("%d\n",6 ); printf("%d\n",7 ); printf("%d\n",8 ); printf("%d\n",9 ); printf("%d\n",10 );

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

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

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课件将带你深入了解循环结构的概念和应用。 从基础的while循环到嵌套循环和循环控制语句,帮助你轻松理解和掌握编程 中的循环结构。
一、循环结构概述
循环结构介绍
介绍了什么是循环结构以及它的作用和优势。
常见循环结构类型
探讨了while、do-while和for等常见的循环结构 类型。
do-while循环结构语法
介绍了do-while循环的语法和语法要点。
do-while循环结构示例
通过实例演示了do-while循环在实际代码中的应用。
四、for循环
1
for循环结构介绍
介绍了for循环是什么以及它的特点和适
for循环结构语法
2
用场景。
详细解释了for循环的语法和使用方法。
3
for循环结构示例
通过示例演示了for循环的实际应用和效 果。
五、循环嵌套
循环嵌套介绍
探讨了循环嵌套的概念和在编程中的常见应用。
循环嵌套示例
通过具体示例展示了循环嵌套在解决复杂问题时的实际价值。
六、循环控制语句
循环控制语句介绍 break语句 continue语句 循环控制语句示例
解释了在循环中使用循环控制语句的目的和作用。
二、while循环
1
while循环结构介绍
解释了while循环是如何工作的以及它的特点和用法。
2
while循环结构语法来自详细介绍了while循环的语法和关键要点。
3
while循环结构示例
通过具体案例演示了while循环的实际应用。
三、do-while循环
do-while循环结构介绍

C语言程序设计第5章循环结构程序设计简明教程PPT课件

C语言程序设计第5章循环结构程序设计简明教程PPT课件
第5章
循环结构程序设计
第5 章
循环结构程序设计
当你对C语言程序设计有了一定了解和掌握后,若 想要处理一些更复杂的任务时,当满足某一条件想反 复执行某个程序时,该如何处理呢?
控制语句能够控制程序的流程,根据判断决 定重复运行什么。
程序的三种结构
•顺序结构 •选择结构 •循环结构
本章所
学Байду номын сангаас目标
了解循环结构的特点; 掌握while语句、do-while语句、for语句; 掌握while循环结构、do-while循环结构、for循 环结构 掌握break和continue语句的使用; 理解循环嵌套。 掌握各种循环的应用;
C语言程序设计
第5章 循环结构程序设计
4
【例5.1】输入10个数,求它们的和并输出。
#include <stdio.h> int main() { float x,sum=0; int k=0; while(k<10) { printf("please input x:\n"); scanf("%f",&x); //输入一个数 sum=sum+x; //进行累加 k++; } printf("sum=%f\n",sum); return 0; } 运行结果: please input x:5↙ please input x:7↙ please input x:8↙ please input x:14↙ please input x:53↙ please input x:12↙ please input x:35↙ please input x:9↙ please input x:10↙ please input x:47↙ sum=200
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

{
b+=a;
a+=2;
}
printf(“%d,%d\n”,a,b);
}
程序运行后的输出结果是
A)9,18
B)8,11C)7,11
D)10,14
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
14
循环的嵌套
while循环、do while循环、for循环可以互相嵌套, 且层数不限。
(1) while() { …… while() { …… } …... }
100
n
n 1
#include <stdio.h>
main()
{ int i,sum=0;
i=1;
do
{ sum+=i;
i++;
}while(i<=100);
printf("%d",sum);
}
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
7
while和do~while比较
例 while和do~while比较
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
11
for循环
For循环和while循环的比较
for语句最简单的使用,例如:
for(i=1;i<=100;i++) sum=sum+i;
如果用while循环表示,如下所示:
i=1; while(i<=100) { sum=sum+i;
i++; }
if(x>0&&x>max) max=x; } if(max!=-1) printf(“max=%d”,max); }
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
27
利用循环处理素数问题
例程:求100~200间的全部素数。
语句组 break;
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
19
辅助控制语句——break
Break语句举例: 小写字母转换成大 写字母,直至输入非 字母字符
#include <stdio.h> main() { char c;
while(1) { scanf(“%c%*c”,&c);
无限循环: while(1)
2020/8/16
循环体;
作者:张旭仟 版权所有 欢迎盗版
while 假(0)
expr 真(非0)
循环体
3
while循环
例程:用while循环求
100
n
n 1
#include <stdio.h>
循环条件
main()
{ int i,sum=0;
循环初值
i=1;
while(i<=100)
26
利用循环寻找最大数问题
例如:从输入的若干个大于0的数中选出最大值。输-1结束
main() { int x,max,i;
printf(“Enter x(-1 to end): ”); do
scanf("%d",&x); while(x<0&&x!=-1); max=x; while(x!=-1) { scanf("%d",&x);
if(c>='a' && c<='z') putchar(c-'a'+'A');
else if(c>='A' && c<= 'Z') putchar(c);
else break;
} }
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
20
小练习:
有以下程序(2010年3月)
#include<stdio.h>
(2) do { …… do { …… }while( ); …... }while( );
(3) while() { …… do { …… }while( ); ……. }
(4) for( ; ;) { …… do { …… }while(); …… while() { …… } …...
}
2020/8/16
……
23
辅助控制语句—— continue
注意:continue语句只结束本 次循环,而不终止整个循环的 执行,如有下面程序片段:
while(表达式1) {…
if(表达式2) continue; … }
其流程如右图所示:
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
24
辅助控制语句—— continue
while(m!=n)
{
while(m>n) m=m-n;
while(m<n) n=n-m;
}
printf(“%d\n”,m);
}
程序运行后,当输入14 63 <回车> 时,输出结果是 【1】 。
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
5
do~while循环
do~while语句
一般形式:
作者:张旭仟 版权所有 欢迎盗版
2
while循环
while语句
一般形式:
执行流程:
while(表达式) 循环体语句;
特点:先判断表达式,后执行循环体
说明:
循环体有可能一次也不执行
下列情况,退出while循环
条件表达式不成立(为零)
循环体内遇break,return,goto等语句
21
辅助控制语句—— continue
continue语句
功能:结束本次循环,跳过循环体中尚未执行的语句, 进行下一次是否执行循环体的判断
说明: continue语句仅用于循环语句中 一般形式:
continue;
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
22
辅助控制语句—— continue
for语句既可以用于循环次数已经确定 执行流程:
的情况,也可以用于循环次数不确定 而只给出循环结束条件的情况,它完
for
全可以代替while语句 一般形式:
for([expr1]; [expr2] ;[ expr3])
expr1
假(0) expr2
真(非0)
循环体语句;
循环体
说明:
for语句中expr1, expr2 ,expr3 的类型可以 使任意的,也可省略,但分号” ;”不可省
全国计算机等级考试 2C课程
第五讲 循环结构程 序设计
概述
什么是循环?
循环结构是结构化程序设计的基本结构之一,它和顺序 结构、选择结构共同作为各种复杂程序的基本构造单元。
C语言可实现循环的语句:
while 语句 do ~ while 语句 for 语句 goto 语句(不考)
2020/8/16
注意:break语句则是结束整 个循环过程,不再判断执行 循环的条件是否成立,如有 下面程序片段:
while(表达式1) {…
if(表达式2) break;
… }
其流程如右图所示:
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
25
小练习:
有以下程序 (2008年4月)
#include <stdio.h>
显然,用for语句更简单、方便。
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
12
for循环
For循环的用法非常灵活
例如:要使用for循环输出10个字母可以有多种写法:
#include<stdio.h> main( ) { int i;
for(i=0;i<10;i++) putchar(‘a’+i);
}while(i<=10); 句 它处 们理 的同 结一 果问 也题 一p时 样ri, 。nt若 但f("二 是%者如d循果",s环whu体imle一)后;样面,的则
printf("%d",sum)表; 达式一开始}就为假(0值)时,两种循环的
}
结果是不同的。
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
{ sum=sum+i;
循环变量增值
i++; }
循环终值
printf(“ sum=%d\n",sum);
}
循环体
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
4
小练习:
有以下程序(2010年3月)
#include <stdio.h>
main()
{
int m,n;
scanf("%d%d",&m,&n);
真(非0)
while
expr
假(0)
2020/8/16
作者:张旭仟 版权所有 欢迎盗版
18
辅助控制语句——break
break语句使用的场合
switch
expr
case 1
case case 2
case n
default
语句组1 break;
语句组2 …... break;
语句组n break;
#include <stdio.h>
main()
main()
{ int i,sum=0;
相关文档
最新文档