第7章_用函数实现模块化程序设计解析.pptVIP

第7章_用函数实现模块化程序设计解析.ppt

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

函数调用中的数据传递 (7.3.2,7.3.4) 例5 函数返回值的不正确引用。 函数调用的执行过程 (7.3.3) 函数调用的执行过程 系统为形参分配存储单元。 实参将值传给对应的形参。 执行被调函数至return语句或函数结束处。 返回至主调函数调用处,若有返回值,同时将函数值带回调用处。 函数调用中的数据传递 (7.3.2,7.3.4) 例6 判断一个整数是否是素数,是则输出Yes,否则输出No。 - 函数的嵌套调用 (7.4) 例7 输入一个正整数m,求1~ m范围内的所有素数。 函数的嵌套调用 (7.5) 例8 用弦截法求方程 f(x)=x3-5x2+16x-80=0 的根。 (1) 取两个不同点x1,x2,若f(x1)和f(x2)异号,则(x1,x2)区间内必有一个根。若f(x1)与f(x2)同号,则改变x1,x2,直到f(x1)和f(x2)异号。注意x1、x2的值不应差太大,以保证(x1,x2)区间内只有一个根。 (2)求连接(x1,f(x1))和(x2,f(x2)) 的线段(弦)与x轴的交点(x,0)。 (3) 若f(x)与f(x1)同号,则根必 在(x,x2)区间内,令x1=x。若 f(x)与f(x2)同号,则根在(x1,x) 区间内,令x2=x。 (4) 重复步骤 (2) 和 (3) , 直到 |f(x)|<ε 为止, ε为一个 很小的数( 例如 10-6E. 此时认为 f(x)≈0), x为根 。 函数的嵌套调用 (7.5) N-S流程图: 函数的嵌套调用 (7.5) 函数的嵌套调用 (7.5) 数组作为函数参数 (7.7) 数组元素作函数实参 单向的值传递 例10 两个数组大小比较 a和b为有10个元素的整型数组,比较两数组对应元素。变量n, m, k分别记录a[i]b[i], a[i]==b[i],a[i]b[i]的个数。最后, 若nk, 认为数组ab 若nk, 认为数组ab 若n=k, 认为数组a=b 数组作为函数参数 (7.7) 内部函数和外部函数 (7.11) //File4.c(文件4) #include stdio.h void print_string(char str[ ]) { printf(%s\n,str); }  运行结果: abcdefgc? (输入str) c? (输入要删去的字符) abdefg (输出已删去指定字符的字符串) 例 7.20 * * * * * * * 变量在某一时刻存在,则这时属变量的“生存期”(从给变量分配内存至所分配内存被系统收回的时间间隔 例7.12 简单选择排序 #include stdio.h //例7.12 int sort(int array[ ],int n) { int i,j,k,t; for(i=0;in-1;i++) { k=i; for(j=i+1;jn;j++) if(array[j]array[k]) k=j; if(k!=i) { t=array[i]; array[i]=array[k]; array[k]=t; } } return 0; } int main( ) { int a[10],i; void sort(int [ ],int); for(i=0;i10;i++) scanf(%d,a[i]); sort(a,10); for(i=0;i10;i++) printf(%5d ,a[i]); printf(\n); return 0; } 0 1 2 3 4 5 6 7 8 9 a 49 68 57 32 9 99 27 13 76 88 array 数组作为函数参数 (7.7) 例12 字符串的复制 #include stdio.h //例12 #define LEN 100 int main( ) {void strcopy(char [ ],char [ ]); char s1[LEN],s2[LEN]; printf(Input string s2:\n); gets(s2); strcopy(s1, s2); printf(String s1 is:\n); p

文档评论(0)

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

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

1亿VIP精品文档

相关文档