第08章_函数第10章_指针.ppt

  1. 1、本文档共107页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第08章_函数第10章_指针

第八章 第十章; 本章要点; 任务程序(设计子函数);8.1 计算圆柱体积;8.1.1 程序解析-计算圆柱体积 ;例8-1源程序;例8-1源程序;8.1.2 函数的定义 ;1.返回运算结果的函数定义;形参;double cylinder (double r, double h) /* 函数首部 */ { /* 函数体,写在一对大括号内 */ double result; result =3.1415926 * r * r * h; /* 计算圆柱体积 */ return result; /* 返回运算结果*/ };2.不返回运算结果的函数定义;例8-2 输出5之内的数字金字塔。;8.1.3 函数的调用;1.函数调用的形式和过程;函数调用的过程;分析函数调用的过程;2.参数传递;3.函数结果返回;【例8-3】定义判断奇偶数的函数even (n);4.函数原型声明;#include stdio.h int main( void ) { double height, radius, volume; double cylinder (double r, double h); printf (Enter radius and height: ); scanf (%lf%lf, radius, height); volume = cylinder (radius, height ); printf (Volume = %.3f\n, volume); return 0; } double cylinder (double r, double h) { double result; result =3.1415926 * r * r * h; return result; };练习;写出下列函数的函数首部;8.2 求组合数;求N! #include stdio.h void main() { long fac(int n); int n; long y; printf(“n=); scanf (%d,n); y=fac(n); printf ( “ %d!=%15ld\n , n, y ); } ;求N! #include stdio.h void main() { long fac(int n); long Cmn(int m,int n); int n,m; long y; printf(“m=); scanf (%d,m); printf(“n=); scanf (%d,n); y=Cmn(m,n); printf ( “ Cmn=%15ld\n , y ); } ;侗郸朗挫虞艘索币鬃档韵君梆戳角歉转脑皂余辟频舒有萤畸狮歼挟敝肩峦第08章_函数第10章_指针第08章_函数第10章_指针;例 8.6 用弦截法求方程 f(x)=x3-5x2+16x-80=0 的根 ;8.3五个人求年龄问题;用一个函数来描述上述递归过程: int age(int n) /*求年龄的递归函数*/ { int c; if(n==1) c=10; else c=age(n-1)+2; return(c); } 用一个主函数调用age函数,求得第5人的年龄。 #include stdio.h void main() { printf(“%d”,age(5)); } ;例8.8 用递归方法求n! ;例8.9 hanoi(汉诺)塔问题。这是一个古典的数学问题,是一个用递归方法解题的典型例子。 问题是这样的:古代有一个梵塔,塔内有3个座A、B、C,开始时A座上有64个盘子,盘子大小不等,大的在下,小的在上。有一个老和尚想把这64个盘子从A座移到C座,但每次只允许移动一个盘,且在移动过程中在3个座上都始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求编程序打印出移动的步骤。 ;A;由上面的分析可知:将n个盘子从A座移到C座可以分解为以下3个步骤: (1) 将A上n-1 个盘借助C座先移到B座上。 (2) 把A座上剩下的一个盘移到C座上。 (3) 将n-1个盘从B座借助于A座移到C座上。;程序如下: #include stdio.h void main() { void hanoi(int n,char one,char two,char three);

文档评论(0)

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

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档