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

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

ID:43190810

大小:346.00 KB

页数:52页

时间:2019-10-02

C语言教程第5章_循环结构程序设计_第1页
C语言教程第5章_循环结构程序设计_第2页
C语言教程第5章_循环结构程序设计_第3页
C语言教程第5章_循环结构程序设计_第4页
C语言教程第5章_循环结构程序设计_第5页
资源描述:

《C语言教程第5章_循环结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第5章 循环结构程序设计概述计算机解题过程中,经常遇到要编制循环结构的情况,大量问题均离不开循环结构如求:1+2+3+….+100sinx=x-x3x5x73!5!7!+…准备部分工作部分控制部分准备部分控制部分工作部分修改部分出循环出循环NYN修改部分Y两种循环结构:左边是先执行后判断右边是先判断后执行组成作用准备部分完成赋初值,(如累加变量清零,累乘变量置1等),设置循环次数工作部分反复多次被执行的操作修改部分保证循环做有规律的变化控制部分可按已设置的循环次数或控制循环条件结束循环循环语句while语句格式:while(表达式)语句

2、功能:当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行语句。表达式值非0语句编程:求1+2+3+…+100的值main(){inti=1,sum=0;/*准备部分*/while(i<=100)/*控制部分*/{sum=sum+i;/*工作部分*/i=i+1;/*修改部分*/}printf("sum=%d",sum);printf("i=%d",i);}说明:1)循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现。2)在循环体中应有使循环趋向于结束的语句。如果无此语句,则i的值始终

3、不改变,循环永不结束。即形成了死循环。dowhile语句格式:do语句while(表达式);功能:先执行一次指定的循环体语句,然后判别表达式,当表达式的值为非零时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。表达式值不为0语句main(){inti=1,sum=0;do{sum=sum+i;i=i+1;}while(i<=100);printf("sum=%d",sum);printf("i=%d",i);}while语句和do-while语句的比较:在一般情况下,用while语句和用do-while

4、语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但是如果while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的。while与dowhile区别i<=10时相同,i>10时不同main(){intsum=0,i;scanf("%d",&i);while(i<=10){sum+=i;i++;}printf("%d",sum);}main(){intsum=0,i;scanf("%d",&i);do{sum+=i;i++;}while(i<=10);printf("%d",sum);}main(){int

5、c;while((c=getchar())!='')putchar(c);}将输入的字符原样输出main(){intc;c=getchar();while(c!=''){putchar(c);c=getchar();}}例:用0.1mm厚纸对折,对折多少次后其厚度超过地球直径(12742公里)main(){intn=1;floatans;ans=2*1e-7;while(ans<=12742){n=n+1;ans=ans*2;}printf("n=%d,ans=%f",n,ans);getch();}运行结果:n=37,ans

6、=13743.895347求:框里数字(1~9):111111=111*11*1运行结果:i=9main(){longinti=1,ans;ans=111*11*(i*10+1);while(111111!=ans){i++;ans=111*11*(i*10+1);}printf("i=%d",i);}main(){longinti=1,ans;do{ans=111*11*(i*10+1);i++;}while(111111!=ans);printf("i=%d",i-1);}运行结果:i=9设有一阶梯,每步2阶,最后余1阶;每步

7、3阶,最后余2阶;每步5阶,最后余4阶;每步6阶,最后余5阶;每步7阶,正好到楼顶。问共有多少阶梯。main(){intladders=7;while(ladders%3!=2

8、

9、ladders%5!=4

10、

11、ladders%6!=5)ladders+=14;printf("%d",ladders);}求两个非负整数u和v的最大公因子(即最大公约数)。main(){inta,b,i;printf("pleaseenter2integers:");scanf("%d,%d",&a,&b);i=a>b?b:a;while(1){if(a%i

12、==0&&b%i==0)break;i--;}printf("%d",i);}for语句格式:for(<表达式1>;<表达式2>;<表达式3>)语句C语言中的for语句使用最为灵活,不仅可以用

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

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

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