迭代与重复循环程序设计.ppt

迭代与重复循环程序设计.ppt

ID:56531643

大小:386.00 KB

页数:41页

时间:2020-06-27

迭代与重复循环程序设计.ppt_第1页
迭代与重复循环程序设计.ppt_第2页
迭代与重复循环程序设计.ppt_第3页
迭代与重复循环程序设计.ppt_第4页
迭代与重复循环程序设计.ppt_第5页
资源描述:

《迭代与重复循环程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、高级语言程序设计第4章迭代与重复—循环程序设计(4)今天讨论的题目判断一个数是否是素数再次讨论学生成绩统计问题猜数游戏模拟目标break/continue自顶向下逐步求精的分析设计方法随机数的产生,随机现象的模拟仿真问题1:判断一个数是否是素数问题描述:从键盘输入一个自然数,判断它是否是素数,是素数输出1,否则输出0.样例输入1:2样例输出1:1样例输入2:1样例输出2:0样例输入3:4样例输出3:0如果是这样的测试用例?样例输入:2140样例输出:100分析什么是素数?素数也称质数,是只有1和自身两个因数的自然数.1不是素数,2是最小的素数怎么判断自然数m是否是素数呢?方法1:依次用2到m

2、-1的数作为除数,判断它是否能整除m。方法2:依次用2到sqrt(m)的数为除数,判断它是否能整除m。怎么控制循环?对于方法1:ik输出1否则输出07结束流程图循环有两个出口:1)对所有的i都不能整除m,m一定

3、是素数;2)如果某个i<=k能整除m,m必然不是素数。break语句如果先不考虑用户输入1的情况,实现代码为再次讨论成绩统计问题问题描述:循环接收用户键盘输入的有效学生成绩并累加求和,如果输入的数据超出了0到100的范围,则忽略它,如果输入一个非数值型数据则结束输入,打印求和结果和平均结果。输入样例606060-160110a输出样例okokokerrokerraverageof4scoresis60.0算法设计流程图能够读到数据就是正确的scanf函数返回0没读到继续做下一次循环,continue语句算法实现continue0.c思考题:输入CTRL-Z结果怎样?能结束吗?输入-1又怎样?

4、思考题:break/continue破坏了程序的单入口单出口的结构化特征,不用break/continue是否可以实现同样的效果?break语句只适用于标准的循环和多分支选择结构,continue也只能用于标准的循环结构中,它们一般都是有条件的无条件转移语句—goto一般形式goto语句标号;……语句标号:……语句标号:可以在goto语句的前面判断素数问题用goto取代break见代码goto0.c更多的goto见代码goto.c问题3:随机数游戏模拟问题描述:计算机“想”好一个1到100之间的数,你来猜,如果没猜中给出提示,是大了还是小了。如果猜中输出祝贺信息!问是否继续猜?假设计算机“想

5、”的数是55(这个数是随机的)输入样例:506055输出样例:toolowtoohighCongradulation!youareright!继续否?再如:碰运气游戏游戏者每次投掷两个骰子,把两个朝上的点数相加。第一次投掷时如果得到的和为7或11,游戏者就赢了;如果得到的和为2、3或12游戏者就输了(即计算机这个“东家”就赢了);如果得到的和为4、5、6、8、9或10,那么这个和就作为游戏者的点数,要想赢必须再次投掷,一直到取得自己的点数为止,如果投掷出7点,游戏者就输了。分析自顶向下,逐步求精:从抽象到具体,逐步明晰的过程。开始先勾划出求解方案的一个比较粗糙的轮廓,确定一个比较抽象地概念,

6、然后再逐步细化,把抽象的东西逐渐细化到可以实现的具体步骤算法设计(顶层1)1.1计算机“想”一个1到100之间的数1.2猜数1.3是否继续猜?是回到1.1,否结束计算机怎么想那个数—把1.1细化1.1使用随机函数rand()产生一个1~100之间的数numberrand()是包含在stdlib库中的一个函数,它能返回一个0到RAND_MAX之间的一个整数,ANSI标准规定RAND_MAX不得小于32767,从stdlib.h中可以查到它的值就是32767。怎么猜–把1.2细化1.2.1读用户猜的数guess1.2.2判断是否猜中,如果没中,返回到(1.2.1)继续猜,否则到(1.2.3)1.

7、2.3输出猜中祝贺信息经过一次求精之后算法细化为:1.1使用rand()随机产生一个1~100之间的数number1.2.1读用户猜的数guess1.2.2判断是否猜中,如果没中,返回到(1.2.1)继续猜,否则到(1.2.3)1.2.3输出祝贺信息1.3是否继续猜?是回到1.1,否结束对1.2.2判断是否猜中再求精一次1.2.2.1如果guess>number提示toohigh返回到(1.2.1)1.2.2

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

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

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