- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(6周)4章_函数(二)
* 练习: 编写两个函数,分别求出两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入。 把一个4位数的各位数字反序排成一个新的四位数,恰好是原数4倍的。找出此数输出。 编写程序,在程序中输入三角形三边a、b、c,用带实参的宏求三角形面积。要求定义两个带参的宏。 * 全局变量的存储类别 * 定义全局变量中关键字的使用 用 static 定义静态全局变量 若在源文件的开头有: static int a 意味着该变量就只能在本文件中使用。 若 static 缺省,则使用范围扩大到组成程序的所有C源文件。 用 extern 说明全局变量 若在源文件的开头有: extern int a 意味着该变量在其它文件中定义,在本文件中被使用。 * 全局变量 外部变量是全局变量 静态外部变量(静态全局变量) 限定只能在本文件内使用的外部变量 用static声明 非静态外部变量(全局变量) 其作用域还可以推广到其它文件中使用,只需要在其它文件中对该外部变量进行说明即可。 不用static; 可以用extern声明外部变量,以扩展外部变量的作用域; * 全局变量给程序设计带来诸多弊病: (1) 降低程序的清晰度 (2) 降低函数的灵活性 (3) 降低存储空间的利用率 适当使用! * 系统处理程序时: (2) 动态局部变量分配在局部动态数据区 (3) void main函数是所有c程序的执行入口程序。 (4) void main函数中的变量也是局部变量。 静态数据区 动态数据区 a b d a c b (1) 全局变量和静态局部变量分配在静态数据区; * print( int i ) { printf(i = %d\n,i);} 程序执行结果: i = 1 i = 随机数 i = 2 i = 3 int i = 1; test() { int i; print(i); i = 2; print(i); return(i); } void main() { print(i); i = test()+ 1; print (i); } * #includestdio.h extern int a; //对file2.cpp中定义的变量进行说明 void fun1(); void fun2(); void main() { fun1(); fun2(); printf(函数 main 中的 a是 %d\n,a); } #includestdio.h int a; //允许其它文件中函数访问的全局变量 void fun2() { a = 4; printf(函数 fun2 中的 a是 %d\n,a); } 文件file1.cpp 文件file.cpp 文件file2.cpp #includestdio.h static int a; //只允许文件file1.cpp中函数访问的全局变量 void fun1() { a = 2; printf(函数 fun1 中的 a是 %d\n,a); } 多文件编程 * 函数的多级调用 * 函数的多级调用 主函数 main 的作用 函数的嵌套调用 函数的递归调用 * 主函数 main 的作用: 总控作用 开始执行程序 结束程序 * 函数的嵌套调用 1.嵌套调用: 在程序的执行过程中,被调用函数又在调用另一个函数。 函数1 函数2 函数3 * 例:用弦截法求方程的根 求解的方法是: y x x1 x2 x f(x1 , f(x1)) f(x , f(x)) f(x2 , f(x2)) 弦截法求方程的根 * 程序设计思路: (1)输入x1,x2代表根的初始区间,f1,f2代表函数f在x1,x2两点的函数值。要保证初始的f1,f2异号,如果不是异号,要重新输入x1,x2。 (2)定义函数f(x)计算多项式 的值。 (3)用函数xpoint(x1, x2 )计算f(x1,f(x1))和f(x2,f(x2))的连线与x轴交点x的值,公式为: (4)定义函数root(x1, x2 )来求解实根。 首先调用函数xpoint( x1,x2)计算f(x1,f(x1))和f( x2 , f (x2) )的连线与x轴交点x的值,再判断f (x)与f (x1)和f (x2)哪一个同号,如果f (x)与f (x1) 同号,就用x作为新的x1,否则就用x作为新的x2。再在新的区间内进行计算。 * main函数 { …… x=root(x1 , x2); …… } root函
您可能关注的文档
- !!!!再论思维的可训练性.pdf
- HYDRACoRe Microsoft Word 文档.doc
- (0,1)-矩阵类u(R,S)的基数函数f(R,S)及其非零集.pdf
- $R^3$中曲面的等距变形和$R^4$中.pdf
- (2009年)数 学 --完整.doc
- (2+1)维手征Gross-Neveu模型的顶角修正和相结构.pdf
- (2010-2011学年)科学与工程计算平时作业.doc
- (12.29 刘桂平)南国雅苑黄金商铺坐拥双城 成水乡片财富当家花旦.doc
- (n0,1,m)非系统卷积码信息恢复算法的研究.pdf
- (三)课程架构表表2-4-3-1商业与管群资处科课程架构表(以科为单位,1科1表).pdf
- 《GB/T 25936.4-2024橡胶塑料粉碎机械 第4部分:团粒机安全要求》.pdf
- 中国国家标准 GB/T 18216.11-2024交流1 000 V和直流1 500 V及以下低压配电系统电气安全 防护措施的试验、测量或监控设备 第11部分:TT、TN和IT系统中剩余电流监视器(RCM)的有效性.pdf
- GB/T 21551.1-2024家用和类似用途电器的抗菌、除菌、净化功能 第1部分:通则.pdf
- GB/T 21551.5-2024家用和类似用途电器的抗菌、除菌、净化功能 第5部分:洗衣机的特殊要求.pdf
- 《GB/T 21551.5-2024家用和类似用途电器的抗菌、除菌、净化功能 第5部分:洗衣机的特殊要求》.pdf
- 中国国家标准 GB/T 32151.31-2024温室气体排放核算与报告要求 第31部分:木材加工企业.pdf
- 中国国家标准 GB/T 21551.5-2024家用和类似用途电器的抗菌、除菌、净化功能 第5部分:洗衣机的特殊要求.pdf
- 中国国家标准 GB/T 18978.20-2024人-系统交互工效学 第20部分:无障碍设计的工效学方法.pdf
- 《GB/T 18978.20-2024人-系统交互工效学 第20部分:无障碍设计的工效学方法》.pdf
- GB/T 32151.31-2024温室气体排放核算与报告要求 第31部分:木材加工企业.pdf
文档评论(0)