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

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

ID:48805469

大小:637.00 KB

页数:38页

时间:2020-01-26

第5章 循环结构程序设计.ppt_第1页
第5章 循环结构程序设计.ppt_第2页
第5章 循环结构程序设计.ppt_第3页
第5章 循环结构程序设计.ppt_第4页
第5章 循环结构程序设计.ppt_第5页
资源描述:

《第5章 循环结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章循环控制许多实际问题中往往需要有规律地重复某些操作,如菜谱中可以有:“打鸡蛋直到泡沫状”这样的步骤,也就是说,在鸡蛋没有打成泡沫状时要反复地打。相应的操作在计算机程序中就体现为某些语句的重复执行,这就时所谓的循环。下面来思考一个问题:如何编程来计算1+2+3+…+100?程序如下:ints=0;s=s+1;s=s+2;s=s+3;……s=s+100;printf(“s=%d”,s);重复100次,晕!!!有没有更好的方法来计算呢?有!就是用循环来编程。第3章已讨论程序结构顺序结构选择结构循环结构本章讨论第4章已讨论5.1循环结构的程序设计1.while语句一般形式:while(表

2、达式)循环体语句;执行流程:FTexpr循环体while其中:while后面的括号()不能省。while后面的表达式可以是任意类型的表达式,但一般是条件表达式或逻辑表达式。表达式的值是是循环的控制条件。语句部分称为循环体,当需要执行多条语句时,应使用复合语句。特点:先判断表达式,再执行循环体【例】用while语句求1~100的累计和。#includevoidmain(){inti=1,sum=0;while(i<=100){sum+=i;i++;}printf("sum=%d",sum);}循环初值循环终值循环条件循环体循环变量增值运行结果:sum=5050【例】

3、显示1~10的平方#includevoidmain(){inti=1;while(i<=10){printf("%d*%d=%d",i,i,i*i);i++;}}运行结果:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=8110*10=100(1)如果while后的表达式的值一开始就为假,循环体将一次也不执行。(2)循环体中的语句可为任意类型的C语句。(3)遇到下列情况,退出while循环:表达式为假(为0)。循环体内遇到break、return或goto语句(break和goto语句将在随后介绍)。while语句

4、注意事项:inta=0,b=0;while(a>0)//a>0为假,b++不可能执行b++;intnum=0;//字符计数while(1){if(getche()=='')//如果输入的字符是回车符,则返回return;num++;}(4)在执行while语句之前,循环控制变量必须初始化,否则执行的结果将是不可预知的。(5)要在while语句的某处(表达式或循环体内)改变循环控制变量,否则极易构成死循环。(6)允许while语句的循环体又是while语句,从而形成双重循环。while语句注意事项:例:计算10!#includevoidmain(){inti;//i

5、应赋初始值10longs=1;while(i>=1)s*=i--;printf("10!=%ld",s);}i=1;while(i<100)//死循环,因为i的值没变化,永远小于100sum+=i;printf("sum=%d",sum);i=1;while(i<=9){j=1;while(j<=9){printf("%d*%d=%d",i,j,i*j);j++;}i++;}【例】求两个正整数的最大公因子。我们采用Euclid(欧几里德)算法来求最大公因子,其算法是:(1)输入两个正整数m和n。(2)用m除以n,余数为r,如果r等于0,则n是最大公因子,算法结束,否则(3)

6、。(3)把n赋给m,把r赋给n,转(2)。#includevoidmain(){intm,n,r;printf("Pleaseinputtwopositiveinteger:");scanf("%d%d",&m,&n);while(n!=0){r=m%n;//求余数m=n;n=r;}printf("Theirgreatestcommondivisoris%d",m);}运行结果:Pleaseinputtwopositiveinteger:2456↙Theirgreatestcommondivisoris82.do_while语句一般形式:do循环体语句;while

7、(表达式);执行流程:其中:while后面的括号()不能省。while最后面的分号;不能省。while后面的表达式可以是任意类型的表达式,但一般是条件表达式或逻辑表达式。表达式的值是是循环的控制条件。语句部分称为循环体,当需要执行多条语句时,应使用复合语句。FTexpr循环体dowhile特点:先执行循环体,再判断表达式【例】用do_while语句求1~100的累计和。#includevoidmain(){inti=1,sum

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

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

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