嵌套的定义是在定义一个函数是其体内包含着另一个函数的完整定义
c语言不可以定义函数,但可以调用函数。就是说再调用一个函数的过程中又调用另一个函数。
递归
再调用一个函数的过程中又出现直接或间接的调用函数本身称为函数的递归调用。
c语言的特点就是允许函数的递归调用。
用递归求阶乘
#include <stdio.h>
long recursion(int n);
void main()
{
int n;
long result;
printf("input a integer number:\n");
scanf("%d", &n);
result = recursion(n);
printf("%d! = %ld\n", n, result);
}
long recursion(int n)
{
long temp_result;
if( n<0)
{
printf("n<o,input error!\n");
}
else if( n==0, n==1)
{
temp_result = 1;
}
else
{
temp_result = recursion(n-1)*n;
}
return temp_result;
}