C语言 综合应用2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4讲课堂练习1问题汇总 山洞取宝: 假设1:一个山洞中有20个箱子,每个箱子中放着一块重量不等的宝石。 假设2:进入山洞后,最多只能拿一块宝石。 问题:如何编程解决这个问题以实现收获最大化? 做什么? 用流程图表示三种基本结构 三种基本结构: 顺序结构 选择结构 循环结构 用这三种基本结构作为表示一个良好算法的基本单元。进而可以用基本结构的顺序组合可以表示任何复杂的算法结构。 流程图描述算法举例3 上周内容回顾:算法1-累加 累加(或累乘):反复做加法(或乘法) 涉及平台题4.7—多项式求和 该数列:1-1/2+1/3-1/4+...-1/(n-1)+1/n 本周内容训练:算法1-累加 累加(或累乘):反复做加法(或乘法) 涉及平台题5.4—斐波拉契数列求和 该数列:1,1,2,3,5,8,13,21... 上周内容回顾:算法2-素数判断 算法描述:书18页 流程图:书29页图2-34 相关代码:书126页例子6.8 第5讲课堂练习1 n-100间奇数和,n从键盘上输入。用流程图描述算法,并用continue改写下面程序。 多个数输出控制 输出1-35之间的偶数,每行输出5项,最后一行输出时若不足5项也按一行输出。 参考代码段: int k=0; for(i=2;i35;i=i+2) ?{ ??printf(“%d,“,i); k=k+1;?? ??if(k%5==0) printf(“\n”);??? ?} ?if(k%5!=0) printf(“\n”);??? 每行输出5项,即每输出5项换行 最后一行输出时若不足5项也按一行输出 本周平台训练 5.1 不能被3整除的数 5.2 成绩判断 5.3百钱买百鸡 5.4斐波拉契数列求和 5.5 字母的大小写转换 本周课后习题 5.6 通用计算器 5.7 计算某年某月有几天 5.8 图案输出 选做题:不算平时成绩,但是想得高分者一定要练习 5.9 斐波那契数列输出 5.10 最优组合问题 * 第5讲 综合应用2 求极值(最大值)算法 算法:对操作的描述,即操作步骤。 做什么 怎么做 ? 比较的是宝石,还是箱子? 怎么做? 为了表示一个算法,可以用不同的方法。 自然语言 传统流程图 结构化流程图 伪代码 PAD图 算法描述 用自然语言表示算法 优点:用自然语言表示通俗易懂 缺点: 文字冗长, 容易出现“歧义性”。 自然语言表示的含义往往不太严格,要根据上下文才能判断其正确含义。 用自然语言描述包含分支和循环的算法,不很方便。 结论:除了很简单的问题以外,一般不用自然语言描述算法。 不建议用这个方法 用流程图表示算法 流程图是用一些图框表示各种操作。 优点:用图形表示算法,直观形象,易于理解。 缺点:对流程线的使用没有严格限制。 结论:使用者可以不受限制地使流程随意地转来转去,使流程图变得毫无规律。这种算法难以阅读,也难以修改,从而使算法的可靠性和可维护性难以保证。 最传统的表示方法 用流程图表示算法(续) 注意:流程线的箭头一定不能丢 流程线指出各框的执行顺序 三种基本结构的图示 顺序结构 选择结构 循环结构的图示 当型(While型)循环结构 直到型(Until型)循环 流程图描述算法举例1 平台题4.1:已知三角形三条边,求三角形的面积 开始 结束 输入a、b、c s=(a+b+c)/2 area=sqrt(s*(s-a)*(s-b)*(s-c)) a+bc并且b+ca并且a+c b 打印三角形面积 打印“无法构成三角形” 具体编程怎么做很清晰 流程图描述比较规范 用N-S流程图表示算法 N-S结构化流程图: 在这种流程图中,完全去掉了带箭头的流程线。 全部算法写在一个矩形框内,在该框内还可以包含其它的从属于它的框,或者说,由一些基本的框组成一个大的框。 N-S流程图用以下的流程图符号 (1)顺序结构 (2)选择结构 (3)循环结构 用伪代码表示算法 用传统的流程图和N-S图表示算法,直观易懂,但画起来比较费事。 因此,流程图适宜表示一 个算法,但在设计算法过程中使用不是很理想。为了设计算法时方便,常用一种称为伪代码(pseudo code)的工具。 伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。它如同一篇文章,自上而下地写下来。每一行(或几行)表示一个基本操作。它不用图形符号,因此书写方便 、格式紧凑,也比较好懂,便于向计算机语言算法(即程序)过渡。 用伪代码表示算法 伪代码:即具有的语句关键字用英文表示,其他的可用汉字表示。 优点: 伪代码书写格式比较自由,容易表达出设计者的思想。 用伪代码写的算法也很容易修改。 用伪代码很容易写

文档评论(0)

wst34008 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档