- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言程序设计3(算法初步).ppt
利用计算机求解问题的一般过程 (1)问题分析阶段 (2)数据结构设计阶段 (3)算法设计阶段 计算机解题的步骤。 (4)编码与调试阶段 用某种程序设计语言描述的解题算法-----计算机程序。 算法描述 P65例1(自学):求解一元二次方程 问题分析 假设一元二次方程可以书写成ax2+bx+c=0。可以看出,任何一个一元二次方程都由三个系数a、b、c惟一确定,所以,首先需要用户输入三个系数,然后再根据一元二次方程的求解规则计算最终的结果,并将结果显示输出。 算法描述 程序代码 算法描述 程序代码 P69 例3:百钱买百鸡。 问题分析 假设:公鸡x只,母鸡y只,小鸡z只。 5x+3y+z/3=100 x+y+z=100 公鸡数量在 0 ? 100/5 母鸡数量在 0 ? 100/3 小鸡数量在 0 ? 100,或:100-x-y 算法描述 程序代码 递推法与迭代法是基于分步递增方式进行求解的解题方法。 递推法的基本方法: 其基本策略是将复杂的运算划分为可以重复操作的若干个简单的运算,将解决问题的过程分为若干个步骤,每个步骤都产生一个子解,每个子解都是由前面若干个子解生成的,它们均与问题规模相关,且是相关问题规模的完整解。 迭代法的基本方法 迭代法与递推法类似,也是递增求解。但递推法每步得到的解都是对应问题规模的完整解,而迭代法中间步骤得到的解一般只是“近似解”,而不代表子问题的解。 问题分析 等比数列的递推公式为: itemi = itemi-1 * ratio 后项等于前项乘以比例值 sumi = sumi-1 + itemi 前i项之和等于前i-1项之和加当前项 由于在重复上述递推计算之前,需要将第1项的值累加到sum中,所以,需要先将item存入sum中。 算法描述 P74例6:按位分解整数。 问题分析 可以利用程序设计语言提供的整除和求余运算实现将整数分解的目的。例如,对于整数7326,用7326/1000就得到了最高位7,而7326%1000得到了其余的位数326。但是,这种方法要求首先获得整数最高位的权,因此,算法应该先求整数最高位的权,然后从高向低逐个分离出每位数字。 〖break语句〗 break的功能是结束当前语句结构的继续执行,将控制转移到当前语句结构的下一条语句处。应用在循环结构中,可以实现提前结束循环的目的。 〖continue语句〗 continue语句只能用在循环结构中,其功能是提前终止本次循环体的执行,转去执行下一次循环。 作业 P77 习题 1,2,3,4,5, P78 上级练习题 2 P79 编程题 1,2 * * 第3章 计算机算法初步 3.1 算法的概念 正确、易读、高效、通用 例:求n! 即1×2 ×3 ×… ×n 设两个变量,p 存放乘积,i 存放乘数。 S1: 输入n S2: 使 p=1 S3: 使 i=2 S4: 使 p ×i, 乘积仍放在变量p中, 可表示为p×i ? p S5: 使i的值加1, 即i+1? i S6: 判断in否。是:输出p; 不是: 返回S4执行步骤S4以及其后的步骤。 开始 2?i, 1?p p×i ? p i+1? i in? 输入n 结束 N Y 打印p N N Y Y 开始 输入 a,b,c b 2 - 4ac ? t t 0 t = 0 结束 输出一个解 输出“无解” 输出两个解 #include stdio.h #include math.h main( ) { int a, b, c,t; printf( “Input a,b,c: ” ); scanf( “%d%d%d”, a, b, c ); t = b*b – 4*a*c; if (t0) printf( “No solution\n” ); else if ( t==0 ) printf( “X = %lf\n”, -b/(2.0*a) ); else { double t0; t0 = sqrt( (double)t ); printf( “X1 = %lf, X2= %lf\n”, (-b+t0)/(2*a), (-b-t0)/(2*a) ); } } 3.2 穷举法 概述 列举出每一个可能性,逐个进
您可能关注的文档
- chap2煤形成.ppt
- chap33均匀设计试验20121127.ppt
- Chapter02-DataModeling.ppt
- chapter04-03(串行口).ppt
- chapter05外汇管制和我国的外汇管理.ppt
- Chapter06acountingmcgill.ppt
- chapter1Banlanceofpayment13.pdf
- Chapter2酶section1.ppt
- Chapter2金属在其它静载荷下力学性能.ppt
- Chapter3模拟信号数字传输.ppt
- 2022~2023邮政行业职业技能鉴定考试题库及答案参考69 .pdf
- 2020-2025年中国智能电动摩托自行车行业市场细分策略制定与实施研究报告.pdf
- 2024年医疗废物管理制度范文(二篇) .pdf
- 2021年2月高压电工电工作业模拟试题及答案卷7 .pdf
- 2023年促销策划方案范文五篇_4 .pdf
- 2022-2023年质量员《市政质量专业管理实务》考前冲刺卷②(答案解析23.pdf
- 2021铁路专业继续教育-铁路专业继续教育(精选试题) .pdf
- 门卫值班制度 .pdf
- 2023年-2024年演出经纪人之演出经纪实务高分通关题库A4可打印版.pdf
- 承包商义务履行保函合同修订版2024 .pdf
文档评论(0)