- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 4 章 选择型程序设计 4.1 算法和算法的表示 解决问题确定的方法和有限的步骤 “一个算法,就是一个有穷规则的集合,其中之规则规定了一个解决某一特定类型的问题的运算序列。” 对同一个问题,可有不同的解题方法和步骤 算法决定了程序的质量 算法的要素 两要素: 基本功能操作 + 控制结构 算法的基本特征 算法 对处理问题的过程的描述 算法的基本特征 有穷性 确定性 有效性 有零个或多个输入 有一个或多个输出 数据结构 对这个过程中所涉及的数据的描述 算法举例 算法的表示 可用不同的方法表示算法,常用的有: 自然语言 传统流程图 结构化流程图 伪代码 PAD图 用流程图表示算法 美国国家标准化协会 ANSI(American National Standard Institute) 规定了一些常用的流程图符号 用流程图表示算法 结构化程序设计方法 程序设计的基本目标是用算法对问题的原始数据进行处理,从而获得所期望的效果。但这仅仅是程序设计的基本要求。要全面提高程序的质量,提高编程效率,使程序具有良好的可读性、可靠性、可维护性以及良好的结构,编制出好的程序来。 程序的三种基本结构 顺序结构 程序的三种基本结构 选择结构 程序的三种基本结构 循环结构 三种基本结构的共同特点 (1)只有一个入口; (2)只有一个出口; (3)结构内的每一部分都有机会被执行到; (4)结构内不存在“死循环”(无终止的循环)。 结构化程序设计方法 结构化程序设计方法是公认的面向过程编程应遵循的基本方法和原则。结构化程序设计方法主要包括: ①以三种基本的程序控制结构的组合来编制程序,从而使程序具有良好的结构; ②程序设计自顶而下; ③用结构化程序设计流程图表示算法。 else总是和它上面离它最近的未配对的if配对 例4-10 闰年判断算法 /*功能:说明if语句的嵌套格式和用法。*/ #include stdio.h void main() { int year,leap; printf(Please input the year:); scanf(%d,year); if (year % 4!=0) leap=0; else if (year % 100 != 0) leap=1; else if (year%400!=0) leap=0; else leap=1; if (leap) printf(%d is a leap year.\n,year); else printf(%d is not a leap year.\n,year); } 利用逻辑运算能描述复杂条件的特点,可将上述程序优化如下: #include stdio.h void main() { int year; printf(Please input the year:); scanf(%d,year); if (( year % 4 == 0 year % 100 != 0 ) || ( year % 400 == 0 )) printf(%d is a leap year.\n,year); else printf(%d is not a leap year.\n,year); } 课堂练习 [1]阅读下列程序,回答问题: #include stdio.h void main() { int a,b,m,n; scanf(“%d, %d”,a, b); m=1; n=1; if (a0) m=m+n; if (ab) n=2 * m; else if (a==b) n=5; else n=m+1; printf(“m=%d, n=%d\n”, m,n); } [案例4.4.1] 求一元二次方程ax2+bx+c=0的解(a≠0)。 /*功能:求一元二次方程的解。*/#include math.hmain(){ float a,b,c,disc,x1,x2,p,q; scanf(“%f,%f,%f”, a, b, c); disc=b*b-4*a*c; if (fabs(disc)=1e-6) /*fabs():求绝对值库函数*/ printf(“x1=x2=%7.2f\n”, -b/(2*a) ); /*输出两个相等的实根
您可能关注的文档
- 创业的营销计划.ppt
- 4做一个智慧型的家长(龙华中心小学刘小东).ppt
- 创意公司简介.ppt
- 4创造性思维形式与方法.ppt
- 4可靠度实用计算方法.ppt
- 4图形的表示与数据结构.ppt
- 创造性游戏专题学习.ppt
- 4工程发包与承包法规.ppt
- 4建设工程工程量清单.ppt
- 初一历史下册 第18课君主集权的强化.ppt
- 山东济南信息技术模拟考试卷含答案(5篇).pdf
- 人教版小学数学二年级下册第八单元《克和千克》单元测试(I)卷.pdf
- 2026中国国际工程咨询有限公司总部校园招聘备考题库最新.docx
- 人教版六年级下册数学第三单元《圆柱与圆锥》测试卷(含答案).pdf
- 护士条例考试试题及答案.pdf
- 2025黑龙江齐齐哈尔市铁锋区选调(招聘)“成手人才”56人备考题库附答案.docx
- (2025年)公务员公开选拔(遴选)面试真题及答案(七).docx
- 2025年新冠疫情防控培训测试题附答案.docx
- 2025年CCAA国家注册审核员考试(ISMS信息安全管理体系基础)测试题及附答案.docx
- 2025年河南信阳市国有资本运营有限公司招聘笔试备考试题及答案.docx
最近下载
- (153页)新统编语文小学语文三年级上册 第五单元全部课件包含习作.pptx
- 琯溪蜜柚的栽培与管理.pdf VIP
- 应变式加速度测试系统与信号处理设计.pdf VIP
- 中国水利水电建设股份有限公司海外业务安全生产、工程质量和环境管理办法.docx VIP
- 世贸组织全球贸易报告.docx VIP
- 健美操(华中农大)中国大学MOOC慕课 章节测验期末考试答案.docx VIP
- ANSI-AWS D1.1-D1.1M 2010 美国钢结构焊接规范 中文版.pdf
- 2025年锅炉试题库(附答案).docx VIP
- 《汉语教程(第三版)第一册 下》教案25 她学得很好.pdf VIP
- 海外工程质量管理办法.docx VIP
原创力文档


文档评论(0)