计算机C语言—第六章.ppt
《计算机C语言—第六章.ppt》由会员分享,可在线阅读,更多相关《计算机C语言—第六章.ppt(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6章章 循环控制循环控制 6.1 概述概述循环:同一程序段重复执行若干次循环:同一程序段重复执行若干次实现循环的语句:实现循环的语句:goto if while dowhile()for 6.2 goto语句及其构成的循环语句及其构成的循环一般形式:一般形式:goto 语句标号语句标号说明:说明:(1)goto语句使控制无条件转到标号所指定的语句处开始语句使控制无条件转到标号所指定的语句处开始 往下执行;往下执行;(2)语句标号必须是标识符而不是常量。)语句标号必须是标识符而不是常量。如:如:goto abc 合法,合法,而而goto 35 则非法;则非法;(3)与循环语句配合使用时,可从
2、循环体内跳到循环)与循环语句配合使用时,可从循环体内跳到循环 体外;体外;(4)goto语句转移的方向可前可后;语句转移的方向可前可后;(5)与)与if语句配合使用时可构成循环控制语句配合使用时可构成循环控制例例如:如:求求sum=0i=1sum=sum+ii=i+1sum=sum+ii=i+1sum=sum+ii=i+1初始准备初始准备重复操作重复操作100次次问题的提出:若采取顺序结构程序设计方法,则问题的提出:若采取顺序结构程序设计方法,则 可描述如下:可描述如下:例例T6-1.c main()int i=1,sum=0;loop:if(i=100)sum=sum+i;i+;/*把把放在
3、这里?放在这里?*/goto loop;printf(“sum=%d n”,sum);运行结果:运行结果:sum=5050友情提示Sum为累加器通常,做累加时初始值=0,做累乘时=16.3 while 语句语句形式:形式:while(表达式)语句表达式)语句例例:求求 传统流程图和传统流程图和N-S结构流程图如下结构流程图如下:真真:执行语句执行语句(由一到多句组成由一到多句组成,多句时用复合语句多句时用复合语句)计算表达式计算表达式 假假:退出循环退出循环当循环当循环sum=sum+ii=i+1i=1;sum=0i100假假真真i=1;sum=0当当i100 sum=sum+i i=i+1例
4、例T6-2.c 求求 程序如下:程序如下:main()int i=1,sum=0;while(i100例例T6-3.c 求求 main()int i=1;sum=0;dosum=sum+i;i+;while(i=100);printf(“sum=%d n”,sum);运行结果:运行结果:sum=5050问题的提出:问题的提出:(1)判断了多少次?语句执行了多少判断了多少次?语句执行了多少次?次?(2)什么情况下出现死循环什么情况下出现死循环(3)哪一句使循环趋于结束哪一句使循环趋于结束 求求 以下是以下是while和和dowhile两种循环的比较两种循环的比较T6-4.cmain()int s
5、um=0,i;scanf(“%d”,&i);while(i=10)sum=sum+i;i+;printf(“sum=%d n”,sum);输入:输入:输出:输出:1 sum=55 10 sum=10 11 sum=0T6-4-1.cmain()int sum=0,i;scanf(“%d”,&i);do sum=sum+i;i+;while(i=10);printf(“sum=%d n”,sum);输入:输入:输出:输出:1 sum=55 10 sum=10 11 sum=11结论结论:(1)当条件表达式第一当条件表达式第一次为真时次为真时,两种循环得两种循环得到的结果相同到的结果相同.(2)当
6、条件表达式一开当条件表达式一开始为假时始为假时,两种循环结两种循环结果是不同的果是不同的.说明:说明:(1)while后的表达式第一次为真时,两种循环结果相同;后的表达式第一次为真时,两种循环结果相同;(2)while后的表达式第一次为假时,两种循环结果不同;后的表达式第一次为假时,两种循环结果不同;(3)死循环:)死循环:while(表达式表达式)当表达式的值为非当表达式的值为非0值,值,如:如:0.2,-5.5,-100,345.67;(4)do 后面若干语句是整体,必须用后面若干语句是整体,必须用 括起。括起。6.5 for 语句语句for语句是使用最为灵活的一种循环语句语句是使用最为灵
7、活的一种循环语句形式:形式:for(表达式表达式1;表达式表达式2;表达式表达式3)语句(循环体)语句(循环体)其中:其中:表达式表达式1:循环变量赋初值:循环变量赋初值表达式表达式2:循环判断条件,为真时继续:循环判断条件,为真时继续 循环,循环,为假时,结束循环;为假时,结束循环;表达式表达式3:循环变量的增量。:循环变量的增量。执行过程,请见右图:执行过程,请见右图:计算表达式计算表达式1表达式表达式2语句语句计算表达式计算表达式3for语句的下一语句语句的下一语句假假真真例例T6-4-2.c 求求 main()int i,sum=0;for(i=1;i=100;i+)sum=sum+i
8、;printf(“sum=%d n”,sum);思考,能把思考,能把for(表达式(表达式1;表达式;表达式2;表达式;表达式3)语句语句)写成)写成while形式吗?能写成形式吗?能写成do while吗?吗?运行结果:运行结果:sum=5050几点说明:几点说明:1.表达式表达式1可省,可省,“;”不能少,此前要对循环变量置初值。不能少,此前要对循环变量置初值。如:如:i=1;s=0;for(;i=100;i+)s=s+i;2.表达式表达式2可省,此时循环判断条件恒为真,出现死循环。可省,此时循环判断条件恒为真,出现死循环。如:如:for(i=1;i+)s=s+i;写成写成while怎么写
9、?怎么写?3.表达式表达式3可省,循环体内要有使循环趋于结束的语句可省,循环体内要有使循环趋于结束的语句 如:如:for(i=1;i=100;)s=s+i;i+;4.表达式表达式1、3可同时省可同时省,先使变量有初值,后使变量增量,先使变量有初值,后使变量增量 如:如:i=1;s=0;for(;i=100;)s=s+i;i+;完全等同于完全等同于while5.表达式表达式 1,2,3可全部省,如可全部省,如:for(;)此时为死循环。此时为死循环。则相当于:则相当于:while(1);循环无终止。循环无终止。6、表达式、表达式1与循环变量可以有关也可无关;与循环变量可以有关也可无关;还可以是逗
10、号表达式。还可以是逗号表达式。如:如:for(s=0,i=1;i=100;i+)s=s+i;for(i=0,j=100;i=j;i+,j-)k=i+j;(常用,见(常用,见书上流程图)书上流程图)特别适用于上面这种有几个循环增量的情况特别适用于上面这种有几个循环增量的情况见书上见书上p64页标注页标注7.表达式表达式2可以是关系、逻辑、算术、字符表达式,非可以是关系、逻辑、算术、字符表达式,非0时,时,执行循环体,为执行循环体,为0时退出循环。时退出循环。例子(先一起看书上的例和例)#include“stdio.h”main()int i;char c;for(i=0;(c=getchar()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 语言 第六
限制150内