用函数实现模块化程序设计课件

用函数实现模块化程序设计课件

ID:33431301

大小:1.46 MB

页数:78页

时间:2018-05-25

用函数实现模块化程序设计课件_第1页
用函数实现模块化程序设计课件_第2页
用函数实现模块化程序设计课件_第3页
用函数实现模块化程序设计课件_第4页
用函数实现模块化程序设计课件_第5页
资源描述:

《用函数实现模块化程序设计课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章函数程序一个程序可以看作是由若干个小的子部分组成。这些子部分中,有的用于获取输入数据,有的用于计算输出数据,有的则用于显示输出数据。每个子部分都可以用函数来实现。函数也称子程序、例程或过程,可以看做是一段小程序,用于解决某一特定问题的语句块。C是模块化程序设计语言C程序结构C是函数式语言必须有且只能有一个名为main的主函数C程序的执行总是从main函数开始,调用其他函数后流程回到main函数,在main中结束函数不能嵌套定义,可以嵌套调用简单的函数main(){voidprintstar();voidprint_message();pri

2、ntstar();print_message();printstar();}Voidprintstar(){printf("****************");}Voidprint_message(){printf("Howdoyoudo!);}****************Howdoyoudo!****************无论把一个程序划分为多少个程序模块,只能有一个main函数。程序总是从main函数开始执行的。在程序运行过程中,由主函数调用其他函数,其他函数也可以互相调用。函数(function)的原意是“功能”。顾名思义,

3、一个函数就是一个功能。在实际应用的程序中,主函数写得很简单,它的作用就是调用各个函数,程序各部分的功能全部都是由各函数实现的。主函数相当于总调度,调动各函数依次实现各项功能。函数可以放在若干个源文件中。§函数的分类函数的分类系统函数(库函数):由C语言函数库提供,用户可以直接使用。使用系统函数必须指定函数所在的包含文件用户函数(自定义函数):是用户根据需要定义的完成某一特定功能的一段程序。使用系统函数的例子#include#includevoidmain(){floata,p;printf(“plsinputa”

4、);scanf(“%f”,&a);p=sqrt(a);printf(“thesqrtofais:%f”,p);}一定要将下面用到的系统函数所在的库用include加入进来使用系统提供的标准库函数时应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件函数定义的一般形式一般格式合法标识符函数返回值类型缺省int型无返回值void函数体函数类型函数名(形参类型说明表){说明部分语句部分}例有参函数(现代风格)intmax(intx,inty){intz;z=x>y?x:y;return(z);}

5、例有参函数(现代风格)intmax(intx,y){intz;z=x>y?x:y;return(z);}例空函数dummy(){}函数体为空例无参函数printstar(){printf(“**********”);}或printstar(void){printf(“**********”);}说明函数就像一段小程序,调用一个函数就相当于在调用的这个位置运行这个小程序。如果把函数看作是一个黑盒子,那么形参就是它的输入,return语句返回的值就是他的输出。函数定义举例求两个数之和的函数intadd(intx,inty){intz;z=x+

6、y;return(z);}例:如何实现下列功能分段函数floatf(floatx){if(x<0)returnx;elseif(x==0)return2;elsereturnx*x;}9/7/2021函数参数和函数的返回值1形参与实参形式参数:定义函数时函数名后面括号中的变量名实际参数:调用函数时函数名后面括号中的表达式c=max(a,b);(main函数)(max函数)intmax(intx,inty){intz;z=x>y?x:y;return(z);}例:比较两个数,并输出大者。main(){inta,b,c;scanf("%d,%d",&

7、a,&b);c=max(a,b);printf("Maxis%d",c);}max(intx,inty){intz;z=x>y?x:y;return(z);}形参实参说明:实参必须有确定的值形参必须指定类型形参与实参类型一致,个数相同形参在函数被调用前不占内存;函数调用时为形参分配内存;调用结束,内存释放例计算x的立方#includefloatcube(floatx){return(x*x*x);}main(){floata,product;printf("Pleaseinputvalueofa:");scanf("%f",&a

8、);product=cube(a);printf(”Cubeof%.4fis%.4f",a,product);}xaproduct×

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。