C语言函数
一:C语言函数
C语言是面向过程的语言,源程序有若干个函数组成,函数是实现了特定功能的代码块
C语言函数的分类:
1)从定义角度:系统定义的函数(库函数)和用户自定义的函数;
2)从返回值角度:带返回值的函数和不带返回值的函数
3)从参数的角度:有参数的函数和无参数的函数
注意:
1)函数名不能同名
2)函数名严格遵守标示符命名规范
二:函数声明:
告诉编译器这个函数已经存在了
如果声明了一个函数,但是这个函数不存在,在运行的时候才会报错
格式:把函数的头部拷贝一份,加上个分号
int sum(int a,int b);
int sum(int a,int b){
return a+b;
}
注意点:
1)当函数的返回值是整型、字符型的时候,被调函数可以不进行声明
2)当被调用函数在主函数之前定义,也可以不用声明直接调用
3) 函数的定义是不能嵌套的,但是调用是可以嵌套的
三:什么是递归?
在函数中又调用了自己
递归的成立条件:
1)能够找到让问题规模缩小的规律
2)能够让递归正常退出的条件
递归分两个阶段:
1)递推阶段 -- 让问题规模缩小的阶段
2)回归阶段 -- 回归迭代(拿能够让退出的条件,迭代计算值)
计算年龄的题?
age = getAge(n-1)+2; //规律
if(n==1) age = 10;
四:include 是一个预处理指令
作用:把要包含的文件源代码拷贝到 使用include的地方
用法:
1)#include ""
表示包含用户自己写的头文件
搜索顺序:源文件当前目录 ---> 编译器的include目录 --> 系统的include目录--->报错
2) #include <>
表示包含系统的头文件
搜索顺序:编译器的include目录 --> 系统的include目录--->报错
3)编译器的include目录:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include
4) 系统目录:
5) 注意:#include预编译指令,这句话不需要加“;”