这题结果为什么是负的?该怎么解决
这题结果为什么是负的?
#include<stdio.h>
int main()
{
int i,sum;
for(i=1,sum=1;i<100;i++)
{
if(i%3==0) sum=sum*i;
}
printf("%d\n",sum);
return 0;
}
------解决方案--------------------
数值太大了, sum结果超出int范围了.
#include<stdio.h>
int main()
{
int i,sum;
for(i=1,sum=1;i<100;i++)
{
if(i%3==0) sum=sum*i;
}
printf("%d\n",sum);
return 0;
}
------解决方案--------------------
数值太大了, sum结果超出int范围了.