我们要求出n的阶乘并把结果准确无误展示出来
阶乘的计算方法有两种情况:
1) n大于等于1的情况
n!=1×2×3×…×(n-1)×n
n!=n×(n-1)!
2) 0的阶乘
0!=1。
1.for循环方法求解
#define _CRT_SECURE_NO_WARNINGS #includeint main() { int n; scanf("%d", &n); int fact = 1; int i; for (i = 1; i <= n; i++) { fact *= i; } printf("%dn", fact); system("pause"); return 0; }
while循环方法求解
#define _CRT_SECURE_NO_WARNINGS #includeint main() { int n; scanf("%d", &n); int fact = 1; int i = 1; while (i <= n) { fact *= i; i++; } printf("%dn", fact); system("pause"); return 0; }
3.利用递归方法求解
#define _CRT_SECURE_NO_WARNINGS #includeint Fact(int n) //递归函数 { int res = n; if (n>1) res = res*Fact(n - 1); return res; } int main() { int n, cnt; scanf("%d", &n); cnt = Fact(n); printf("%dn", cnt); system("pause"); return 0; }



