C程序运用递归求阶乘

#include <stdio.h>
#include <stdlib.h>

 

int main(int argc, char *argv[])
{
while(1){ //循环进入
printf("input a integer number:\n");
int n ;
long result;
long recursion(int n); //声明递归函数
scanf("%d" , &n);
result = recursion(n);
printf("%d ! = %ld\n",n,result); //输出运算结果
}
system("PAUSE");
return 0;
}
long recursion(int n){ //定义递归函数
long temp_result;
if(n<0){
printf("n<0,input error!\n");
}
else if(n==0 || n==1){
temp_result = 1;
}else{
temp_result = recursion(n-1) * n;
}
return temp_result;
}

posted @ 2013-10-26 10:27  随风运转  阅读(331)  评论(0编辑  收藏  举报