一、函数分类
在C语言中,函数分为两大类,一种是库函数,另一种是自定义函数。
所谓库函数,就是C语言库提供给我们的函数,比如说我们常见的printf函数,scanf函数以及strlen函数等等,在我们使用这些函数时,只需要引用头文件就可以使用。
所谓自定义函数,就是我们自己创造的函数,从而让这个具有我们想要的功能。
二、例子
在这里我们以实现两数相加为例。
这是我们在main函数内部直接实现两数相加。
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
printf("输入两个操作数:>");
scanf("%d %d", &num1, &num2);
sum = num1 + num2;
printf("sum = %d\n", sum);
return 0;
}
下面我们将加法的实现过程封装成函数来实现两数相加。只需要向函数传递所需要的参数,结果通过返回值返回就可以实现两数相加了。
int Add(int x, int y)
{
int z = x + y;
return z;
}
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
printf("输入两个操作数:>");
scanf("%d%d", &num1, &num2);
sum = Add(num1, num2);
printf("sum = %d\n", sum);
return 0;
}
三、函数的定义
通过上面加法函数的定义我们可以看出其格式为
函数返回类型 函数名( 函数的参数)
{
// 中间代码为函数所实现的功能
return 函数的返回类型;
}
int Add(int x, int y) // 函数返回类型int,函数名Add,函数的参数x、y
{
int z = x + y; // 函数实现的具体功能
return z; // return函数的返回类型
}
函数的使用
通过我们定义好的函数,我们只需要 变量名(传递函数所需要的参数)就可以实现函数的使用。
使用函数的特点
上面简单的加法代码可能体现不出函数的简便,但如果计算(+ - * / %)或者需求(排序等)很复杂,甚至我们需要计算或者该需求需要使用多次,难道我们每次都要将代码再重新写一次吗?这时我们使用函数就十分简便,每次使用函数只需要将其所需要的参数传递进去就可以了。
当我们需要一个功能,但不想自己实现,我让其他同学帮我实现功能并将其封装成函数,我只需要传递参数使用功能就可以了。
综上来说,函数的特点就是简化代码,代码复用。