函数的定义与调用

函数的定义与调用

ID:43946526

大小:368.50 KB

页数:166页

时间:2019-10-17

函数的定义与调用_第1页
函数的定义与调用_第2页
函数的定义与调用_第3页
函数的定义与调用_第4页
函数的定义与调用_第5页
资源描述:

《函数的定义与调用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第7章函数7.1函数的定义与调用7.2函数的嵌套调用和递归调用7.3数组作为函数参数7.4内部变量与外部变量7.5内部函数和外部函数7.6变量的动态存储与静态存储简介7.1函数的定义与调用在C语言中,从用户使用的角度看,函数可分为库函数和用户自定义函数两种。C语言提供了极为丰富的库函数,如前面各章例题中反复用到的scanf()、printf()、getchar()等函数均属于库函数。这类函数是由系统提供并定义好的,不必用户再去定义,用户只需掌握函数的功能,并学会正确调用这些函数即可。尽管C语言本身提

2、供了众多的库函数,但与实际应用的需要相比,还是远远不够,因此,C语言允许用户按需要定义和编写自己的函数。对于用户自定义函数,不仅要在程序中定义函数本身,即定义函数功能,而且在主调函数中,还必须对被调用函数进行声明。下面将对用户自定义函数进行详细说明。7.1.1函数的定义1.引例【例7.1】定义一个函数,用于求两个数中的大数。main(){intmax(intn1,intn2);/*声明max()函数*/intnum,num1,num2;printf("Inputtwointegernumbers:

3、n");scanf("%d,%d",&num1,&num2);num=max(num1,num2);/*调用max()函数*/printf("max=%d",num);getch();}/*使程序暂停,按任一键继续*/intmax(intn1,intn2)/*定义max()函数*/{return(n1>n2?n1:n2);}程序运行情况如下:Inputtwointegernumbers:12,34↙/*输入*/max=34本例程序由main()和max()两个函数构成。在本案例中,max()函数

4、的返回值是一个整型数,它带两个整型参数,它们的具体值是由main()函数在调用时传送过来的。在max()函数体中的return语句,把所求得的函数值返回给main()函数。为了说明方便,通常将本例中的main()函数称为主调函数,而把max()函数称为被调函数。【例7.2】输出一个文本信息框。voidfun1(void)/*定义fun1()函数*/{printf("**************");}voidfun2(void)/*定义fun2()函数*/{printf("*Howdoyoudo

5、!*");}main(){fun1();/*调用fun1()函数*/fun2();/*调用fun2()函数*/fun1();/*再次调用fun1()函数*/}程序运行结果如下:********************Howdoyoudo!********************本例程序由fun1()、fun2()和main()三个函数构成。fun1()函数和fun2()函数既没有返回值,也没带参数,其功能就是完成一个操作过程,即输出一串文本信息。2.函数定义的一般形式任何函数1、函数定义的一般形

6、式任何函数(包括主函数main())的定义都是由函数首部和函数体两部分组成。其一般形式如下:类型名函数名(参数定义表){声明部分;执行部分;}其中,第一行为函数首部,用来说明函数返回值的类型、函数名以及函数所需参数的类型和名称;花括号中的部分为函数体,由声明部分和执行部分组成,声明部分用来声明执行部分中用到的变量和函数,执行部分用来描述函数完成的具体操作。根据函数是否需要参数,可将函数分为无参函数和有参函数两种。下面分别予以说明。(1)无参函数定义的一般形式:类型名函数名(void){声明部分;执行

7、部分;}无参函数即函数没有参数,因此,函数首部的“参数定义表”可以缺省(但括号不能缺省),也可以用“void”表示。如【例7.2】中的fun1()和fun2()均为无参函数。(2)有参函数定义的一般形式:类型名函数名(类型名参数名[,类型名参数名2…]){说明部分;执行部分;}有参函数在其参数定义表中定义了所需的每一个参数的类型和名称。每一个参数单独定义,参数定义之间用逗号(,)隔开。如【例7.1】中的max()函数就是一个有参函数:在函数首部定义了函数返回值的类型为int,函数名为max,参数n1

8、和n2均为int类型;函数体完成的功能为:选出n1和n2中较大的一个数作为函数值返回。调用有参函数时,主调函数将赋予这些参数实际的值。为了与主调函数提供的实际参数区别开,将自定义函数说明部分定义的参数称为形式参数,简称形参,而将主调函数提供的参数称为实际参数,简称实参。有参函数若无返回值,则其首部的类型标识符也用“void”表示。3.说明(1)除main()函数外,函数名和形参名都是由用户命名的标识符,要求符合标识符的命名规则。(2)函数定义不允许嵌套。在C语言中,所

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

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

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