4.3函数 4.3.1函数的概念及定义 1、函数的概念: 可以被其它程序调用具有 特定功能的一段相对独立的 程序(模块),称函数。
概念说明: (1)一个C程序文件由一个或多个函数组成 (2)一个C程序中必须且只能有一个main函数。 (3)C程序的执行从main函数开始。Main函数可调用其它函 数,但反之则不行。 (4)所有函数在定义时是互相独立的,不能嵌套定义。
2、函数的定义: 函数可分为:无叁函数和有叁函数。 (1)无叁函数 一般形式为: 类型标识符 函数名( ) { 说明部分 执行部分 }
例:定义一个函数,打印若干“*”号 Void print( ) { printf(“****************\n”); }
例:定义一个函数,打印3 行欢迎词“welcome,my friends”. Void welc( ) {int I; For (I=1;I<=3;I++) Printf(“welcome,my friends”); }
一般形式: 类型标识符 函数名(形式参数说明列表) (2) 有参函数 一般形式: 类型标识符 函数名(形式参数说明列表) { 说明部分 执行部分 } 说明: 函数返回可以有值带出,也可以没有。如要 让函数返回一个确定的值,必须使用语句: return(表达式)
例:定义一个函数,求两整形参数之和,并返回和值。 Int sum(int x,int y) {int z; Z=x+y; Return(z); }
例:定义一个函数,求3个 实形参中的最大值,并返回该值。 Float max(float x1,float x2,float x3) { float m; If(x1>x2) m=x1; Else m=x2; If(m<x3) m=x3; Return(m); }
4.3.2函数的调用 函数调用的一般形式: 函数名(实际参数列表) 说明: 实际参数列表中的参数可以是常量、变量 表达式。各实际参数之间用逗号分开, 且实际参数个数应与对应形参个数一致, 类型应与对应形参类型相匹配。
函数作为表达式中的一项出现在表达式中,以函数返回参数参与表达式的 运算,这种方式要求表达式是有返回值的。 1、函数表达式: 函数作为表达式中的一项出现在表达式中,以函数返回参数参与表达式的 运算,这种方式要求表达式是有返回值的。 例: k=max(a,b,c);调用上例max 函数,求实际参数a,b,c中最大值,并将该值赋予变量k.
2 、函数语句: 把函数作为一个语句,即其一般形式加上分号 例: printf(“%d”,a); scanf(“%d”,&a); welco( );
3、函数参数 函数作为另一个函数调用的实际参数出现,这种情况是把该函数的返回值作为实际参数对待,因此要求该函数必须有返回值。 例:printf(“%f”,max(a,b,c)); m=max(x,y,max(a,b,c));
4.3.3函数声明 如果被调函数是标准库,必须在程序开头用#include命令将有关头文件包含到本程序中。例: #include “math.h” #include “stdio.h”
如果被调函数是用户自定义函数,则在主调函数中对被调用的函数加以声明。 函数声明的一般格式为: 函数类型标识 函数名(形式参数说明列表)
作业:P129-130