C中的阶乘计算

问题描述 投票:-1回答:1

我想编写一个简单的程序来使用C计算给定数字的阶乘。但是我的代码似乎存在一些我无法检测到的逻辑错误。希望得到帮助。

int fact(int n);
int main(void)
{
    int num = get_int("Type number: ");
    printf("%i\n", fact(num));
}

//define function

int fact(int n)
{

    for (int i = 1; i < n; i++)
    {
        n *= i;
    }
    return n;
}
c logic factorial
1个回答
0
投票
int fact(int n)
{
    int sum = 1;
    for (int i = 1; i <= n; i++)
    {
        sum = sum  * i;
    }
    return sum;
}
© www.soinside.com 2019 - 2024. All rights reserved.