函数的概念
完成特定功能的代码段,它是组成C语言程序的基本单位
优点:1、提高程序的可读性
2、提高开发的效率
3、提高代码的重用性
格式:
返回值 函数名(形参列表){
函数体;
//return可有可无,看返回值。
}
4种
有参无返回值:void test(int x);
无参无返回值:void test();
有参有返回值:int/char/double/bool test(int x){return x;}
无参有返回值:int/char/double/bool test(){return 10;}
函数的参数
1、形参和实参
形参:在定义函数的时候,函数名后面小括号中的参数
格式:数据类型 变量
形参的作用域:只有在本函数中使用,在函数调用时分配空间
实参:调用函数的时候传递的参数
函数的返回值
主调函数:A、B两个函数,如果在A中调用B,A叫主调函数,B被调函数
被调函数:B被调函数
被调函数返回给主调函数的值叫做函数的返回值;
1、return 0;
2、return a+b;
3、如果函数的返回值是void return(可以不写);
4、函数中可以有多个return,但只有一个可用;
函数的调用:
函数声明:
技巧:赋值函数头部,加上分号,写在调用函数之前
几种声明例子:
1、先声明再调用,再实现
#include<...>
int test();
int main()
{
test();
}
int test()
{
//函数体
}
2、先声明并实现,再调用
#include<...>
int test()
{
//函数体
}
int main()
{
test();
}
3、嵌套调用
#include<...>
int main()
{
int test();
}
int test()
{
//函数体
}
递归函数
理解:再函数中自己调用自己的函数
条件: 1、自己调用自己
2、找到让问题规模缩小的规律
3、能够让递归结束的条件
递归函数的两个阶段:
1、递推阶段:问题规模缩小的过程
2、回归迭代:迭代计算值得过程
优点/缺点
优点:遇到问题规模能够缩小,而且有规律的问题的时候
缺点:消耗内存
建议不要在程序中过多使用。 |
|