[工学]第4章_程序的控制结构第2讲4[1]4~

[工学]第4章_程序的控制结构第2讲4[1]4~

ID:27612207

大小:1.41 MB

页数:47页

时间:2018-12-04

[工学]第4章_程序的控制结构第2讲4[1]4~_第1页
[工学]第4章_程序的控制结构第2讲4[1]4~_第2页
[工学]第4章_程序的控制结构第2讲4[1]4~_第3页
[工学]第4章_程序的控制结构第2讲4[1]4~_第4页
[工学]第4章_程序的控制结构第2讲4[1]4~_第5页
资源描述:

《[工学]第4章_程序的控制结构第2讲4[1]4~》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章程序的控制结构(二)C语言程序设计应用场合循环结构的流程图表示循环语句单重循环应用举例嵌套循环及其应用举例流程的转移控制内容提要应用场合问题:(1)计算1+2+3+…+n=?(2)计算n!(即:1×2×3×…×n)=?(3)计算1!+2!+3!+…+n!=?(4)在课本例4.6的猜数游戏中,程序每执行一次,只允许用户猜一次,如果猜不对想再猜一次,只能再运行一次程序。能否使游戏在不退出程序运行的情况下,让用户连续猜许多次直到猜对为止呢?(5)在课本例4.8中,我们设计了一个简单的计算器程序。每执行一次程序,用户只能选择一种运算符做一次运算,若要再做其他

2、的运算,必须重新运行一次程序。能否在不退出程序运行的前提下,让用户可以做多次运算,直到用户想停止时按一个键程序才结束?以上的问题都有一个共同点,即含有重复处理的内容,该类问题都可以用本节将要介绍的循环语句实现。循环结构有两种类型:(1)当型循环结构(2)直到型循环结构循环结构的流程图表示传统流程图A真假假条件P当型循环结构A当P成立NS流程图条件PA假真A直到P为假直到型循环结构传统流程图NS流程图A条件PA当型循环真假假条件P假真两种循环结构的比较直到型循环2.3循环语句(1)while语句(2)do-while语句(3)for语句(1)while语句w

3、hile语句用来实现当型循环结构。其一般形式为:while(表达式)循环体语句;执行:当表达式为非零时,重复执行循环体语句,直到表达式的值为0(即为假)时结束循环的执行。0表达式语句非0当表达式为真循环体语句(a)传统流程图(b)NS流程图while语句应用举例例1:计算1+2+3+…+n=?(假设n的值为100)假i<=100sum=sum+ii=i+1真i=1sum=0#includeintmain(){inti=1,sum=0;while(i<=100){sum=sum+i;i++;}printf(“%d”,sum);return0

4、;}输出sum例2:#includeintmain(){intnumber,rightDigit;printf("Enteryournumber.");scanf("%d",&number);while(number!=0){rightDigit=number%10;printf("%d",rightDigit);number=number/10;}printf("");return0;}程序的功能是?(2)do-while语句do-while语句用来实现直到型循环结构。其一般形式为:do循环体语句;while(表达式);执行:先

5、执行一次循环体语句,然后判断表达式,当表达式为非零时,继续重复执行循环体语句,直到表达式的值为0(即为假)时结束循环的执行。当表达式为真循环体语句(a)传统流程图(b)NS流程图循环体语句表达式非00do-while语句应用举例计算n!=1×2×3×…×n=?(假设n的值为10)#includeintmain(){inti=1;longfac=1;do{fac=fac*i;i++;}while(i<=10);printf("10!=%ld",fac);return0;}for(表达式1;表达式2;表达式3)语句首先执行表达式1。如果表

6、达式2的值为非0,就重复执行语句和表达式3,直到表达式2的值为0时结束循环。循环起始条件循环结束条件循环增量(3)for语句求解表达式1求解表达式3表达式2语句for语句的下一语句假真for(表达式1;表达式2;表达式3)循环体语句;for语句应用举例计算n!=1×2×3×…×n=?(假设n的值为10)#includeintmain(){inti;longfac=1;for(i=1;i<=10;i++)fac=fac*i;printf("10!=%ld",fac);return0;}选择三种循环的一般原则如果循环次数已知,用for如果

7、循环次数未知,用while如果循环体至少要执行一次,用do-while这只是“一般”原则,不是“原则”循序渐进式编程——例4.6:猜数游戏想一个1~100之间的数猜对:right猜错:wrong并提示大小2.4单重循环举例只猜1次直到猜对为止最多猜10次猜多个数10次猜不对就猜下一个数循序渐进式编程——例4.6:猜数游戏猜数游戏用到的库函数怎样模拟计算机“想”一个数呢?随机函数rand()产生[0,RAND_MAX]之间的随机数magic=rand();#includeRAND_MAX在stdlib.h中定义产生[0,b-1]之间的随机

8、数magic=rand()%b;产生[a,a+b-1]之间的随机数

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

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

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