int factorial(int n)
{
int result;
.
.
.
return result;}
#include <stdio.h> int fac(int n) { if(n<0) { printf("erorr."); } else if(n==0||n==1) { return 1; } else { return fac(n-1)*n; } } int main() { int n=5; printf("%d的阶乘为%d",n,fac(n)); return 0; }
这段代码也能运行 result只是利用一个局部变量保存定义函数的值
result最终的值是factorial(n-1)*n执行完成后的值
这里return的功能为返回函数的值
返回的是变量的值而不是一个函数,factorial是定义的函数名字