你的C语言阶乘程序,在阶乘函数fac中有两个小问题,我帮你改好了,你看看吧.(改动的地方见注释)
#include
long fac(int num);
int main( )
{
int m;
long r;
printf("Please input m:");
scanf("%d",&m);
r=fac(m);
printf("The result is %ld\n",r);
return 0;
}
long fac(int num)
{
int i;
long result;
result=1;//这里把result=0;改成result=1; 阶乘的初始值为1,否则,阶乘出来的值为0
for(i=1;i<=num;i++)//这里把for-i循环中的分隔符逗号,改为分号;
result=result*i;
return result;
}
运行结果
Please input m:6
The result is 720