函数的嵌套
在C语言中,所有函数都是相互平行,且相互独立的。在定义函数时,一个函数内不能再定义另一个函数,不能嵌套定义,但是可以嵌套使用。
例:编写一个求四个整数中最小值的函数,并在主函数进行调用。
代码语言:javascript复制#include<stdio.h>
int main(){
int min4(int a,int b,int c,int d);
int a=3,b=4,c=1,d=6;
printf("min=%d",min4(a,b,c,d));
return 0;
}
int min4(int a,int b,int c,int d){
int min(int a,int b);
int m=a;
m=min(m,b);
m=min(m,c);
m=min(m,d);
return m;
}
int min(int a,int b){
return a>b?b:a;
}
函数的递归--->循环
在函数的调用过程中,出现一个函数调用自己本身的情况,就是在运行的过程中调用自己。
函数的递归有两个必要条件:
- 函数的出口,不能无限制地调用本身,须有个出口,化简为非递归状况处理。
- 递推公式。(偷懒)
递归的理解方法:
例如:求1 2 3 4 ... 100
代码语言:javascript复制#include<stdio.h>
int main(){
int sum(int n);
printf("%d",sum(100));
return 0;
}
int sum(int n){
if(n==1){
return 1;
}else{
return sum(n-1) n;
}
}
更多的关于函数递归的例题请见下一篇