#include "stdio.h"
main()
{
long s=1;
int i,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
s*=i ;
printf("%ld",s);
}
你想要求15的阶乘,而那个条件>=6,怎么可以再执行下去,所以你可以加上一句输入语句,这样求哪个的阶乘都可以了,不是很方便吗?兄台!!!
跟你运行了,此程序没错!1
#include "stdio.h"
main()
{
long s=1;
int i;
for(i=1;i<=8;i++)
s*=i ;
printf("%ld",s); //格式说明符,s是长整型,
}
7的时候没超出范围,乘了8就超出int范围了
1、没有问题
2、算15的话,int不够大,把s声明为long long就可以了。
printf("%ld",s)
试一下就知道了