一 函数的递归调用
函数的递归调用的定义:在调用一个函数的过程中又出现直接或间接地调用该函数本身,称为函数的递归调用
计算n!
用函数递归效率较低,且占用了大量内存空间。
二 数组作为函数参数
1.一维数组作为参数传用
(1)用数组名作函数参数,应该在主调函数和被调用函数分别定义数组,不能只在一方定义。
(2)实参数组与形参数组类型应一致,如果不一致,结果会报错。
(3)数组形参中的行数可省略,如int a[];
(4)传递的数组名a,实质是a的地址。
假设求一个一维数组中的最大值:
int main(void)
{
int a[]={0,1,2,3,4,5,6,7,8,9};
int len=sizeof(a) / sizeof(a[0]);
maxArrayValue(a,len);
}
定义一维数组函数的排序算法:
一 顺序排序
二 冒泡排序
三 插入排序
三 字符串数组作为参数应用
跟一维数据情况用法一样,从如下代码理解,跟库函数中的用法一样,不过是自己定义,运用的。
1 计算字符数组的有效长度函数
2 字符串的复制
3 字符串的链接
4 字符串的比较
四 多维数组作为参数传参
比如求一个二维数组的和:
数组作为形参,有限制,必须规定列数。