网站大量收购独家精品文档,联系QQ:2885784924

函数进阶和结构化编程.pptVIP

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
函数进阶和结构化编程

第 7 章 函数进阶和结构化编程;学习目标 1.掌握源程序结构中函数的组织方法; 2.理解结构化程序设计思想,并能利用它来解决问题; 3. 理解函数嵌套调用的概念,并能熟练利用函数的嵌套调用来解决问题; 4.理解递推、递归及其算法实现; 5.理解编译预处理的概念,能熟练应用宏定义和文件包含; 6.了解用户自定义库模块。;7.1 结构化编程;7.1.2 模块化设计;7.1.3 结构化编码;7.2 函数的嵌套调用;例: 设计一个用于计算常用圆形体体积的计算器,该计算器可支持多次反复计算。采用菜单方式输入1或2或3,分别表示需要计算球体、圆柱体和圆锥体的体积,计算时需输入函数所需的相应参数。;#includestdio.h #includemath.h #define PI 3.141592654 void calculate(int); void main(void) { int sel; /* 循环选择计算圆形体的体积,直到输入非1~3数字为止 */ while(1) { printf(\t\t%s,1--ball\n); printf(\t\t%s,2--cylind\n); printf(\t\t%s,3--cone\n); printf(\t\t%s,other--exit\n); printf(\t\tPlease input your selete: ); scanf(%d,sel); if(sel1||sel3) { printf(\n input error\nplease input 1~3\n); break; } else calculate(sel); } };void calculate(int sel) { double vol_ball(void); double vol_cylind(void); double vol_cone(void); switch(sel) { case 1: printf(ball:%.2lf\n,vol_ball()); break; case 2: printf(cylind:%.2lf\n,vol_cylind()); break; case 3: printf(cone:%.2lf\n,vol_cone()); break; } };/* cylind : v=PI*r*r*h */ double vol_cylind() { double r,h; printf(Please input rh:); scanf(%lf%lf,r,h); return PI*r*r*h; } /* cone : v=PI*r*r*h/3.0 */ double vol_cone() { double r,h; printf(Please input rh:); scanf(%lf%lf,r,h); return PI*r*r*h/3.0; } ;7.3 递推;#includestdio.h double fun(double); void main( ) { double eps=1e-10,sum; sum=fun(eps); printf(\nPI=%.8lf,sum); } double fun(double eps) { double sum=0.5,t,t1,t2,t3; int odd=1,even=2; t=t1=t2=1.0; t3=0.5; while(t1e-10) { t1=t1*(even-1)/even; odd+=2 ; even+=2; t2=1.0/odd; t3=t3/4.0; t=t1*t2*t3; sum+=t; } return sum*6; };7.3.2 递推数列 如果一个数列从某一项起,它的任何一项都可以用它前面的若干项来确定,这样的数列被称为递推数列,表示某项与其前面的若干项的关系就称为递推公式。例如Fibonacci数列如下: 1,1,2,3,5,8,13,…, 令fib(n)表示Fibonacci数列的第n项,依据数列中项与项之间的关系可写出如下Fibonacci数列的递推公式: fib(n)=fib(n-1)+fib(n-2) n=3,4,… (通项

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档