05_01_C语言程序设计_第五章 循环结构程序设计_周常欣

合集下载

C语言程序设计(5循环结构)

C语言程序设计(5循环结构)
C语言程序设计
第五章 循环结构
循环是指使用一定条件对同一个程序段重复执行若干次。 循环结构又称重复结构,可以完成重复性、规律性的操作。
for while
4种循环语句
goto
do-while
goto 语句


一般格式:
goto 语句标号

由if ……goto 构成循环 例4-1: main() {int x=0,y=0; star: if (x<=3) {y=x+1; x=x+1; goto star;}printf(“%d”,y);}分析输出结果。
#include <stdio.h> main() { int p2=1,p1; int n=9; while(n>0) { p1=2*(p2+1); p2=p1; n--; } printf(“the total is %d\n”,p1); }
求n!(n=1~8)
#include <stdio.h> main() { int n=0; long t=1; printf(“ n n! \n”); while(n<8) { n++; t*=n; printf("%d %ld \n",n,t); } }
#include<stdio.h> main() { int n=9; while(n>6) { n--; printf(“%d”,n); } }
main( ) { int n=9; while(n>6) n--; printf(“%d\n”,n); }
876
6
例4-3:用while循环求sum=1+2+3+……+100

C语言程序设计_05循环结构程序设计

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语言程序设计:chapter05 循环结构程序设计

C语言程序设计:chapter05 循环结构程序设计
2022/9/6
x
求:s n 流程图 n1
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); }
17
开始
初始化n,s,x
输入x
结束
输出s N
s=s+n n加1 n<=x
C 语言程序设计
第5章 循环结构程序设计
2
循环的基本概念 不同形式的循环控制 多重3 循环控制
一、循环问题
什么是循环?
100
问题1:y n 做99次加法 为什么要使用循环?
问题2:求学n1生平均成绩 分数相加后除以课程数
问题3:找出数集x中能同时被3和7整除的数 找数
2022/9/6
应用举例
28
【例5.4】把100~200之间能被7整除的数, 以十个数为一行的形式输出,最后 输出一共有多少个这样的数。
for (n=100; n<=200; n++)
n能被7整除
F 终止本 次循环
T 输出n
输出了10个数
T
F
换行
2022/9/6
算法和程序
#include " stdio.h" void main( ) { int n,j=0;
2022/9/6
5.6 循环的嵌套
32
如果循环语句的循环体内又包含了另一条
循环语句,则称为循环的嵌套
例如:
#include <stdio.h>

C语言第5章 循环结构程序设计

C语言第5章  循环结构程序设计
第5章 循环结构程序设计
第5章 循环结构程序设计
5.1 while语句 5.2 do-while语句 5.3 for语句 5.4 循环结构嵌套 5.5 break语句与continue语句 5.6 综合实训 习题
5.1 while语句
知识导例 输入10个学生的某课程考试成绩,求总成绩和平均成绩。
图5-3 程序prac5_1_1.c运行结果 3.项目分析 【实训项目二】 1.实训内容 2.解决方案
5.1 while语句
05(81-103)P23 fyy_Embed_4.png
图5-4 程序prac5_1_2.c运行结果 3.项目分析
5.2 do-while语句
知识导例 输入一批整数,统计出其中的正数与负数的个数,输入0结束。
05(81-103)P23 fyy_Embed_14.png
图5-14 程序ex5_4_1.c运行结果 相关知识 1.嵌套的常见格式
5.4 循环结构嵌套
(1)while( (4)while( 2.嵌套循环语句的执行过程 实践训练 【实训项目一】 1.实训内容 2.解决方案
05(81-103)P23 fyy_Embed_15.png
05(81-103)P23 fyy_Embed_5.png
图5-5 程序ex5_1_1.c运行结果 相关知识 1.do-while语句格式及执行过程
5.2 do-while语句
2.do-while语句的特点 实践训练 【实训项目一】 1.实训内容 2.解决方案
图5-6 do-while语句流程图
5.2 do-while语句
3)求解表达式3。 4)返回上面步骤2)继续执行。 5)循环结束,执行for语句下面的一个语句。 3.for语句变化形式 1)省略for语句中的表达式1,对循环控制变量i的赋初值操作放在fo r语句前面。 2)表达式2省略,即不判断循环条件,循环将永不结束,成为死循 环。 3)表达式3可以省略,将其放入循环体。 4)可以同时省略表达式1和表达式3,只有表达式2。 5)同时省略三个表达式。 6)省略循环体,此时循环体为空,只有一个分号。

第五章循环结构的C程序设计

第五章循环结构的C程序设计
第五章循环结构的C程序设计
while循环语句
l while循环的一般形式如下:
while(表达式) 语句
例 while(i<5) { i++;}
表达式:关系表达式(如 i<=100)或逻辑表达式 (如x<y),也可以是数 值表达式或字符表达式。
示例1
流程图
使用while语句时,应注意几个 问题。
示例2
i=1; sum=0; printf("Input n:"); scanf("%d",&n); while(i<=n) { scanf("%d",&k);
sum=sum+k; i++; } printf("\nsum is:%d\n",sum); }
运行: Input n: 3
i
12 34
2
sum
46
while循环语句示例
例1:利用while语句实现:从键盘输入n(n>0)个数,求其之和。
程序:
void main() { int i, n, k, sum;
i=1; sum=0; printf("Input n:"); scanf("%d",&n); while(i<=n) { scanf("%d",&k);
len++; } printf("\nSentence is %d characters long.\n",len); }
运行:
Type in a sentence, then press<Enter>

C语言 第5章 循环结构

C语言 第5章 循环结构

循环体外语句
特点:先判断,后 执行;若条件不成 立,则有可能一次 也不执行。
适合的情况: 知道控制循环的 条件为某个逻辑 表达式的值,而 且在循环中该表 达式的值会被改 变。
精品课件
10
例1. 编程计算1+2+3+ … +10000
方案一、 sum = sum+i;
i = i+1;
精品课件
11
方案二、
{ …;if(条件2) break; … … } 执行过程: • 每次执行到 if 语句时,计算条件2的值; • 如果条件2的值非零,则跳出循环语句; • 否则,执行 if 语句的下一条语句。
精品课件
55
例7.一球从100米高度自由落下,每次落地 后反弹回原高度的一半,再落下。求它在第10次落地时共 经过多少米?第10次反弹多高? float h=100.0, sum=0.0; int n;
执行流程:
while(表达式)语句;
1. 计算表达式的值; 2. 当表达式的值为非0时,反复执行while中的
语句; 3. 当表达式的值为0时,while循环结束。
功能:while 语句用来实现“当型”循环。
精品课件
9
while 语句执行流程:
开始下一 次循环
循环入口
0Байду номын сангаас
表达式=?
非0
循环体语句
循环 结束!
精品课件
42
➢ 3、for(表达式1;表达式2;)语句 一般当循环控制变量非规则变化,而且
循环体中有更新控制变量的语句时使用。 例如:
for(i=1;i<=100;) { ⋯⋯ i=i*2+1; ⋯⋯ }

c语言课件-第五章-循环结构程序设计


5.5 for语句(当型循环)
例:读程序,判断程序的功能 #include<stdio.h> void main( ) {char c; for(;(c=getchar( ))!=‘\n’;) putchar(c); } 输入ok!<回车>,输出_______
读入一个字符,当它不是回车符就输出.
5.5 for语句(当型循环)
分析:用辗转相除法求最大公约数。
5.3 while语句(当型循环)
5.3 while语句(当型循环)
例:利用while语句计算1+1/2+1/4+1/6…+1/50.
解:观察数列1,1/2,1/4,1/6…,1/50。
分子全部为1,分母除第一项外,全部是偶数。 同样考虑用循环实现。
其中累加器用sum表示(初值设置为第一项1,以 后不累加第一项),循环控制用变量i(i:2-50)控 制,数列通项:1/i。
5.2 goto语句及用goto构成循环
一、goto语句 goto语句的一般形式:goto 语句标号
语句标号:用于定义程序中的某个位置 用标识符表示,不能只用数字
如:goto start(对) goto 20(错)
goto语句的功能是无条件地转到标号所指的语句。
因为滥用goto语句会破坏结构化,所以应该限制 使用goto语句。
i=1 for(; i<=3; )
{ s=s+k; i++; }
i=1 while (i<=3)
{ s=s+k; i++; }
5.5 for语句(当型循环)
(6)表达式2一般是关系表达式或逻辑表达式,但 也可以是数值表达式或字符表达式,只要其值不等于 0就执行循环体。

C语言及程序设计课件1第五章 循环结构程序设计


5.1.3 do-while语句的一般形式
do-while 语句的特点是先执行循环体一次,再判断循环条件 是否成立,以决定循环是不是需要继续被执行,相当于执行循环直到
循环继续条件不再成立时终止循环。
do-while语句实现“直到“型循环结构。其一般形式如下:
do 循环体语句
while(表达式);
功能:先执行循环体语句,然
图5-1 while语句流程图
5.1.1 while语句的一般形式
注意:如果循环体包含有2条或2条以上的语句,则必须用一对花括 号将语句括起来,即循环体是一个复合语句。不加花括号就表示循环 体只包含一条语句。
如下面的程序段: while(表达式 ) 语句1; 语句2;
当循环条件成立时,只有语句1是循环体语句,会被重复执行, 语句2不属于while语句范围,只有while循环语句结束后才被执行。
① while语句是先判断条件,然后决定是否执行循环体。如果循环继 续条件(即表达式)的值一开始就为“假”(0),则循环体不会被执行, 而是直接执行循环语句的后续语句,while循环又称入口条件循环。
② 为使循环能正常结束,应保证每次执行循环体后,表达式的值会 有一种向“假”变化的趋势,如果i的值不变化,表达式i<=n的值就永 远为“真”,循环体就不断被执行不能停止,变成了无限循环(死循 环)。
与while循环一样,为使循环能正常结束,do-while语句也应 保证每次执行循环体后,表达式的值会有一种向“假”变化的趋势, 防止出现无限循环条件。
5.2 r 循环结构和循环的嵌套 从前面的while循环和do-while的循环例子可以看出,有三个
执行步骤:①执行循环前对循环控制变量进行初始化; ②在循环体中更新循环控制变量的值; ③在循环继续条件中判断循环控制变量是否接近终止值。

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)。
相关文档
最新文档