C语言 计算N的阶乘 哪里出错了

如题所述

第1个回答  2019-10-11
else
{if
(n==0)

factorial
*=1;
else
factorial*=n;}

--n;}
这一段要写成循环的
你这里只写了一个条件判断语句
只执行了一次
把这一段修改成
else
{
while(n!=0)
factorial*=(n--);
}
还有
阶乘在很小的数据的时候就会出现溢出问题
所以
当出现负数的时候不要惊讶