C语言入门到精通3调研报告.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 控制结构与语句;4.1 算法与程序;4.2.1 程序的三种基本结构 结构化程序设计 基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语句(goto) 结构化程序:由三种基本结构反复嵌套构成的程序叫~ 优点:结构清晰,易读,提高程序设计质量和效率 三种基本结构 顺序结构:由若干块组成,按各块的排列顺序依次执行。 选择结构:又称分支结构,根据给定的条件,从两条或者多条路径中选择下一步要执行的操作路径。 循环结构:根据一定的条件,重复执行给定的一组操作。 ;算法的描述 用自然语言表示 用流程图表示 传统流程图描述算法 ;例:求10000之内偶数之和 ;例:求ax2+bx+c=0 的根;用N-S流程图描述算法 顺序结构:先执行A操作,再执行B操作 选择结构:根据条件,选择所要执行的语句 循环结构: 当型循环:先判别循环条件,再执行语句 直到型循环:先执行语句,再判别循环条件;例:求10000之内偶数之和 ;例:判别m是否素数;判别闰年; 用伪代码表示算法 例:求1000之内的完数(因子之和等于该数本身) 开始 置t的初值为1 当t≤1000,执行下面操作 置a的初值为1,置sum的初值为0 当at,执行下面操作 如果t能被a整除,则sum=sum+a a=a+1 (循环到此结束) 如果sum与t相同,输出t的因子 t=t+1 (循环到此结束) 结束 ; 用计算机语言表示算法 例:求1000之内的完数(因子之和等于该数本身) main() { int t,sum,a; for(t=1;t=1000;t++) { a=1; sum=0; while(at) { if(t%a==0)sum=sum+a; a=a+1; } if(sum==t) { printf(“%d 是完数,因子为:”); for(a=1;at;a++) if(t%a==0) printf(“%d,”); printf(“\b\n”); } } }; 4.2.2 程序设计过程 程序设计的过程:分析问题、设计算法、实现程序。 自顶向下,逐步细化,模块化设计,结构化编程。 例:三数中取大数 (1)基本解题思路 s1:输入三数a,b,c s2:从a,b,c中找出最大数赋给max s3:输出max (2)算法细化 s1:调用scanf()函数 s2:设计一个函数max3()求三数中的最大数 s3:调用printf()函数 (3)设计主函数; main() { float a,b,c,max; float max3(float,float,float); scanf(“%f%f%f”,a,b,c); max=max3(a,b,c); printf(“The max is:%f\n”,max) ; } (4)设计max3的算法 设3个参数为x,y,z s2.1:从x与y中取大数送m中 s2.2:从m与z中取大数送m中 s2.3:返回m给主调函数 用C语言写出max3; float max3(float x,float y,float z) { float m; if(xy) m=x; elae m=y; if(mz) m=z; return m; } ;例:百钱买百鸡 (1)基本解题思路 cocks:公鸡数,hens:母鸡数,chicks:小鸡数 根据题意,有公式 cocks+ hens

文档评论(0)

4753333 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档