C语言程序设计 第6章 循环结构程序设计.ppt
《C语言程序设计 第6章 循环结构程序设计.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计 第6章 循环结构程序设计.ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、6.1 6.1 goto语句以及用语句以及用goto语句构成的循环语句构成的循环6.2 while6.2 while语句语句6.3 do-while6.3 do-while语句语句6.4 for6.4 for语句语句6.5 break6.5 break语句语句和和continue语句语句 6.6 6.6 循环的嵌套循环的嵌套 6.7 6.7 循环结构程序设计举例循环结构程序设计举例 第六章循环结构程序设计第六章循环结构程序设计在在C语言中可以用以下语句来实现循环:语言中可以用以下语句来实现循环:1.用用goto语句和语句和if语句构成循环;语句构成循环;2.用用while语句;语句;3.用用d
2、o-while语句;语句;4.用用for语句。语句。循环循环:就是在给定的条件成立时反复执行某一程就是在给定的条件成立时反复执行某一程 序段,被反复执行的程序段称为循环体。序段,被反复执行的程序段称为循环体。6.1 6.1 gotogoto语句以及用语句以及用gotogoto语句语句 构成的循环构成的循环 1、语句形式:语句形式:goto 语句标号语句标号;例如例如:label:.goto label;语句标号用标识语句标号用标识符表示,它的定符表示,它的定名规则与变量名名规则与变量名相同。相同。2、语句执行流程、语句执行流程:在程序执行过程中,如果遇到在程序执行过程中,如果遇到gotogot
3、o语句,则语句,则程序执行流程无条件地转向语句标号后的语程序执行流程无条件地转向语句标号后的语句继续执行。句继续执行。3、说明说明 语句标号仅仅对语句标号仅仅对gotogoto 语句有效,对其它语句语句有效,对其它语句不影响。不影响。同一个程序中,不允许有同名标号。同一个程序中,不允许有同名标号。gotogoto语句通常与条件语句语句通常与条件语句ifif配合使用。可用来配合使用。可用来实现条件转移、构成循环、跳出循环体等功能实现条件转移、构成循环、跳出循环体等功能 【例】【例】求求1+2+3+1001+2+3+100的和的和#include stdio.hmain()int i=1,sum=
4、0;loop:if(i=100)sum=sum+i;i+;goto loop;printf(“%d”,sum);6.2 while6.2 while语句语句真真(非非0)循环体循环体假假(0)1、while 语句的形式语句的形式:while(表达式表达式)循环体;循环体;2、while 语句语句 常称常称为为“当型当型”循环语句循环语句。表达式表达式3、说明、说明:先判断表达式,后执行语句。先判断表达式,后执行语句。表达式同表达式同ifif语句后的表达式一样,可以是语句后的表达式一样,可以是任何类型的表达式。任何类型的表达式。循环体多于一句时,用一对循环体多于一句时,用一对 括起括起。whil
5、ewhile循环结构常用于循环次数不固定,根循环结构常用于循环次数不固定,根据是否满足某个条件决定循环与否的情况据是否满足某个条件决定循环与否的情况。例:分析下列程序段的循环次数例:分析下列程序段的循环次数i=1;while(i=100)putchar(*);i+;i=1;while(i0)printf(+);else printf(-);scanf(%f ,&x);判断正负号判断正负号#include stdio.h main()char ch;int num=0;ch=getchar();【例】【例】统计从键盘输入的一行字符的个数(以统计从键盘输入的一行字符的个数(以回车键作为输入结束标记
6、)。回车键作为输入结束标记)。while(ch!=n)判断是否输入结束判断是否输入结束 num+;ch=getchar();printf(num=%dn,num);注意注意表达式在判断前,必须要有明确的值。表达式在判断前,必须要有明确的值。循环体中一般有改变条件表达式的语句。循环体中一般有改变条件表达式的语句。while(while(表达式表达式)后面没有分号。后面没有分号。6.3 do-while6.3 do-while语句语句1、do-while的形式:的形式:do 循环体;循环体;while(表达式);表达式);真真(非非0)表达式表达式 循环体循环体假假(0)2、说明、说明:先先执行执
7、行语句语句,后判断,后判断表达式表达式。第一次条件为真时,第一次条件为真时,while,do-while等价;等价;第一次条件为假时,二者不同。第一次条件为假时,二者不同。【例例】用用do-whiledo-while语语句句编编写写程程序序统统计计从从键键盘盘输输入入的的一一行非空字符的个数(以回车键作为输入结束标记)。行非空字符的个数(以回车键作为输入结束标记)。#include stdio.hmain()char ch;int num=0;ch=getchar();do num+;ch=getchar();while(ch!=n);printf(num=%dn,num);While和和do
8、-while语句的区别语句的区别 while先判断表达式,然后执行循环语句先判断表达式,然后执行循环语句 当条件不满足时,循环体一次都不执行当条件不满足时,循环体一次都不执行 do-while先执行循环语句,然后判断表达式先执行循环语句,然后判断表达式当条件不满足时,循环体至少执行一次当条件不满足时,循环体至少执行一次#include stdio.hmain()int sum=0,i;scanf(“%d”,&i);while(i=10)sum=sum+i;i+;printf(“sum=%dn,sum);#include stdio.hmain()int sum=0,i;scanf(“%d”,&
9、i);do sum=sum+i;i+;while(i=10);printf(“sum=%dn,sum);【例例】whilewhile和和do-whiledo-while循环的比较循环的比较运行情况如下运行情况如下:1 sum=55运行情况如下运行情况如下:1 sum=55再运行一次再运行一次:11 sum=0再运行一次再运行一次:11 sum=11注意注意在在if、while语句中,表达式后面都没有分语句中,表达式后面都没有分号,而在号,而在do-while语句的表达式后面则必语句的表达式后面则必须加分号。须加分号。do-while和和while语句可以相互替换语句可以相互替换6.4 for6
10、.4 for语句语句1、for的形式:的形式:for(初始表达式初始表达式1;条件表达式;条件表达式2;循环表达式;循环表达式3)循环体循环体;表达式表达式1:用于循环开始前为循环变量设置初始值。:用于循环开始前为循环变量设置初始值。表达式表达式2:控制循环执行的条件,决定循环次数。:控制循环执行的条件,决定循环次数。表达式表达式3:循环控制变量修改表达式。:循环控制变量修改表达式。循环体语句:循环体语句:被重复执行的语句。被重复执行的语句。表达式表达式3表达式表达式1循环体循环体判断表达式判断表达式2假假(0)真真(非非0)for的下一条语句的下一条语句2、执行过程、执行过程 for(i=1
11、;i=100;i+)sum=sum+i;例如:例如:它相当于以下语句:它相当于以下语句:i=1;while(i=100)sum=sum+i;i+;表达式表达式1 1;while(表达式表达式2)表达式表达式3 3;#include”stdio.hinclude”stdio.h”main()main()intint sum=0,i;sum=0,i;for(ifor(i=1;i=100;i+)=1;i=100;i+)sum=sum=sum+isum+i;printf(“sumprintf(“sum=%=%d”,sumd”,sum););【例例】用用forfor循环编写求循环编写求1+2+3+1+2
12、+3+100+100的和的和3、说明说明三个表达式都可以是三个表达式都可以是逗号表达式逗号表达式。三个表达式都是任选项,都可以省略,但要注三个表达式都是任选项,都可以省略,但要注意省略表达式后,意省略表达式后,分号间隔符不能省略分号间隔符不能省略。逗号表达式逗号表达式:用逗号将两个表达式连接起来的表达式:用逗号将两个表达式连接起来的表达式一般形式:一般形式:表达式,表达式,表达式表达式,表达式,表达式 表达式表达式n求解过程:先求解求解过程:先求解表达式表达式1,1,再求解表达式,依次往后求解再求解表达式,依次往后求解表达式。整个逗号表达式的值是最后一个表达式的值。表达式。整个逗号表达式的值是
13、最后一个表达式的值。例如:例如:a=(3+5,4+7);a的值为的值为11注意注意:逗号运算符的优先级别逗号运算符的优先级别在所有运算符中是在所有运算符中是最低最低的的【例例】用用forfor循环编写求循环编写求1+3+5+7+91+3+5+7+9的和的和#include#include“stdio.hstdio.h”main()main()intint sum=0,i;sum=0,i;for(ifor(i=1;i=9;=1;i=9;+i,+i+i,+i)sum=sum=sum+isum+i;printf(printf(“sumsum=%=%d d”,sum,sum););1、for语句中表达
14、式省略的形式语句中表达式省略的形式(1)for语语句句一一般般形形式式中中的的“表表达达式式1”可可以以省省略;略;如:如:sum=0;i=1;for(;i100)break;sum=sum+i;(3)表达式)表达式3也可以省略,但此时保证循环也可以省略,但此时保证循环能正常结束如:能正常结束如:for(sum=0,i=1;i=100;)sum=sum+i;i+;(4)可以省略表达式可以省略表达式1和表达式和表达式3,只有表达,只有表达式式2,如:,如:i=1;sum=0;while(i=100)sum=sum+i;i+;相当于相当于i=1;sum=0;for(;i100)break;sum=
15、sum+i;i+;相当于相当于(6)循环体为空语句)循环体为空语句 对对for语句,循环体为空语句的一般形式为语句,循环体为空语句的一般形式为:for(表达式表达式1;表达式;表达式2;表达式;表达式3);如:如:for(sum=0,i=1;i=100;sum+=i,+i);注意注意:表达式可以省略,但是两个:表达式可以省略,但是两个;不可以省略不可以省略【例例】一位百万富翁遇到一个陌生人,陌生人找他谈一个换钱计划,该一位百万富翁遇到一个陌生人,陌生人找他谈一个换钱计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 第6章 循环结构程序设计 语言程序设计 循环 结构 程序设计
限制150内