阶乘数是一个乘以其先前数字的数字。例如,它是5。1 * 2 * 3 * 4 * 5是阶乘数。
我已经制作了一个程序,可以打印任何数字的阶乘,但是我不知道如何在c中打印N个第一个阶乘数。
例如,我输入10。它必须显示前10个数字及其阶乘(构成表格)
这就是我要打印任意数量的阶乘的原因。是否可以使用while / if else语句/ for循环?

#include <stdio.h>
int main()
{
    int i, n, fakt = 1;
    printf("Enter a number:\n");
    scanf("%d", &n);
    for (i = 1; i <= n; i++)
         fakt = fakt*i;
    printf("Factorial of %d js %d\n", n, fakt);
    getch();
}

最佳答案

您可能想要这样:

程序:

#include <stdio.h>
int main()
{
    int i, n, fakt = 1;
    printf("Enter a number:\n");
    scanf("%d", &n);
    for (i=1;i<= n;i++) //use braces to write more than one statement inside the loop
    {
         fakt=fakt*i;
         printf("Factorial of %d is %d\n", i, fakt);
    }
    getch();
}


输出:

Enter a number:
5
Factorial of 1 is 1
Factorial of 2 is 2
Factorial of 3 is 6
Factorial of 4 is 24
Factorial of 5 is 120

09-13 10:50