1209 - C语言8.12
按顺序输出1至n的阶乘值。要求使用寄存器变量保存上一次阶乘的值,用于下一次阶乘值的运算。
Input
一个不超过10的正整数n。
Output
在一行内输出n个整数,分别表示从1至n的阶乘值,每个整数后输出一个空格。
请注意行尾输出换行。
Examples
Input
5
Output
1 2 6 24 120
Solution C
#include<stdio.h> int main() { int i,n,p=1; scanf("%d",&n); for(i=1;i<=n;i++) { p=p*i; printf("%d ",p); } printf("\n"); return 0; }
Solution C++
#include <stdio.h> int main() { int fac(int n); int i, n; scanf("%d", &n); for (i = 1;i <= n;i++) printf("%d ", fac(i)); puts(""); return 0; } int fac(int n) { register int i, f = 1; for (i = 1;i <= n;i++) f *= i; return f; }