大伙再帮我看一下这段C程序吧
来源:百度知道 编辑:UC知道 时间:2024/05/15 11:06:05
#include<stdio.h>
long mj(long n)
{long i,n,p;
for(i=1,p=1;i<=n;i++)
p=p*i;
return p;
}
main()
{long a,b;
printf("input a number:\n");
scanf("%ld",&a);b=mj(a);
printf("S=%ld",b);
}
想求n!;先谢谢了!!!!!!!!!!!
long mj(long n)
{long i,n,p;
for(i=1,p=1;i<=n;i++)
p=p*i;
return p;
}
main()
{long a,b;
printf("input a number:\n");
scanf("%ld",&a);b=mj(a);
printf("S=%ld",b);
}
想求n!;先谢谢了!!!!!!!!!!!
程序没有问题,但是long型只能保存最大不过21亿左右的数字,20!都保存不了!
所以不能算很大的数.
你的正确的。
有问题?
printf("S=%ld",b)改成printf("S=%e",b);
学习中>>>>>>>>>>>
没错啊!