第六章:循环控制

第六章:循环控制

ID:46571048

大小:584.50 KB

页数:74页

时间:2019-11-25

第六章:循环控制_第1页
第六章:循环控制_第2页
第六章:循环控制_第3页
第六章:循环控制_第4页
第六章:循环控制_第5页
资源描述:

《第六章:循环控制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、程序设计中,经常需要重复相同的计算或处理过程,由此形成了循环结构。循环结构是程序中可重复执行的语句序列。第6章循环控制1.用goto语句和if语句构造循环C语言中,实现循环的方式:gotoifwhile2.用while语句do_while3.用do-while语句for4.用for语句6.1概述设S1,S2,S3为三个连续的语句序列,下图中S2为循环结构中的语句部分。设S2可重复0~n次(n≥0),示意图如下:S1S3S2(0次)(n次)S1S3S2(0次)S1S3S2执行0次S1S3S2S1S3S2S2执行1

2、次S1S2S3S1S2S3(1次)(1次)S1S3S2S2执行2次S1S2S3S21.一般形式:goto语句标号;6.2goto语句以及用goto语句构造循环2.几点说明:1)语句标号命名名规则与变量名命名规则相同;2)不用能整数做语句标号;3)不提倡使用goto语句.1.形式:while(表达式)语句;2.作用:实现“当型”循环,即当表达式成立(非0)时,执行语句,否则不执行语句。3.特点:先判断表达式,后执行语句。6.3while语句通常我们称该内嵌语句为循环体循环体语句条件表达式循环体语句条件表达式whi

3、le语句的图形表示真假while的后续语句例1:用while语句实现1+2+3+···+100分析:1.用变量sum存放和2.用i表示累加变量3.循环条件i≤100程序流程图:开始初始化sum=0;i=1;判断:i<=100?sum=sum+i;i=i+1;输出sum结束真假真sum=sum+i;i=i+1;判断:i<=100?sum=0;i=1;输出sum的值i<=100?sum=sum+i;i=i+1;N-S流程图表示main(){intsum=0,i=1;while(i<=100){sum=sum+i;i

4、++;}printf("sum%d",sum);}循环体语句循环条件程序:i++;sum+=i;i=0;100例2.求1到100之间的奇数之和,偶数之积。sum=0mul=1i<=100i能整除2?yesnomul=mul*isum=sum+i输出sum,muli++;i=1main(){doublemul=1;inti=1,sum=0;while(i<=100){if(i%2==0)mul=mul*i;elsesum=sum+i;i++;}printf("sum=%d",sum);printf("mu

5、l=%e",mul);}main(){inti,k1,k2,k;i=1;k1=1;k2=2;while(i<=5){k=k1+k2;k1=k2;k2=k;i++;printf("%5d",k);}}例3.读程序练习:358132112k1k2k3输出:323535585881381313211321211.形式:do语句while(表达式);2.作用:实现“直到型”循环3.特点:先执行语句,后判断条件,直到表达式不成立为止。6.4do--while语句循环体语句条件表达式循环体语句!(条件表达式)do_wh

6、ile语句的流程图真假main(){inti,sum=0;i=1;do{sum=sum+i;i++;}while(i<=100);printf("sum=%d",sum);}例1.用do_while语句实现1+2+3+···+100i++;sum+=i;i=0;100例2:计算表达式1×22×33×4n×(n+1)1111+++…..++…..的值,直到某一项的值小于10-3次方为止。分析:1.累加项t=2.循环条件为:t≥10-3i×(i+1)1main(){floatsum=0,t;inti=1;do{t=

7、1.0/(i*(i+1));sum=sum+t;i++;}while(t>=1e-3);printf("sum=%f",sum);}while循环与do_while循环小结:1.循环体内必须有使循环趋于终止的条件while(i<=100){sum=sum+i;i++;}do{sum=sum+i;i++;}while(i<=100)2.注意循环初值与循环条件i=1;while(i<=100){sum=sum+i;i++;}i=0;while(i<100){i++;sum=sum+i;}do_while的循环体

8、至少执行一次,while的循环体可能一次也不执行。4.在循环体至少执行一次的前提下,do_while与while循环等价。例3:求n!main(){inti=1,n;doublem=1;scanf("%d",&n);while(i<=n){m=m*i;i++;}printf("%10.0f",m);}main(){inti=1,n;doublem=1;scanf("%d",&n);

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。