使用for循环语句计算100的阶乘?

帮忙看下这个为什么会出错?

#include "stdio.h"
void main()
{int a,b=1;
for(a=1;a<=100;a++)
b=a*b;
printf("b=%d",b);
}

第1个回答  2008-08-06
100 的阶乘超过了int的数值允许范围,改成float吧

多给点分吧
第2个回答  2008-08-06
你用的是哪个编译环境,有些编译环境是不允许main没有返回值的。具体的错误贴上来。还有就是100!超过了计算机的表示范围。
第3个回答  2008-08-07
#include <stdio.h>
void main(void)
{
double a,b = 1.0;
for(a=1; a <= 100; a++)
b = a * b;
printf("b=%d", b);
}
头文件stdio在安装目录下,用<>号
int范围不够,用double
第4个回答  推荐于2017-10-09
把输出放在循环体外面 用double int

#include <stdio.h>
void main()
{
double int a,b=1;
for(a=1;a<=100;a++)
{
b=a*b;
}
printf("b=%d",b);
getch();
}本回答被提问者采纳
第5个回答  2020-03-16
数太大溢出了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网