递归和非递归分别实现求n的阶乘 1,用非递归函数实现 n 的阶乘
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int Factor(int n){
int factor = 1;
for (int i = 1; i <= n; ++i){
factor = i * factor;
}
return factor;
}
int main(){
printf("请输入想得到的阶乘:");
int x = 0;
scanf("%d", &x);
printf("%d\n", Factor(x));
system("pause");
return 0;
}
2,用递归函数实现 n 的阶乘
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int Factor(int n){
if (n == 1){
return 1;
}
return n * Factor(n - 1);
}
int main(){
printf("请输入想得到的阶乘:");
int x = 0;
scanf("%d", &x);
printf("%d\n", Factor(x));
system("pause");
return 0;
}