求100以内能被3整除的所有数的积 n>=1
#include <stdio.h>
int main()
{
int n,j;
for(n=1000,j=1;n<=9999;n++,j++)
{
if((n%10==6)&&(n%3==0))
{
printf("%d",n);
printf(" ");
while(j%9==0) printf("\n");
}
else continue;
}
[解决办法]
#include <stdio.h>
int main(void)
{
unsigned __int64 product = 1;
int i;
for (i = 1; i < 100; i++)
if (i % 3 == 0) product *= i;
printf("%I64u", product);
return 0;
}
不晓得溢出了没有,有的话就要搞个简单的大数乘法了,呵呵.
[解决办法]
#include <stdio.h>
#include <limits.h>
int main(void)
{
unsigned __int64 product = 1ui64;
int i;
for (i = 1; i < 100; i++)
{
if (i % 3 == 0)
{
if (_UI64_MAX / product < i)
{
printf("overflow!\n");
break;
}
product *= i;
}
}
printf("sizeof(unsigned __int64) = %d\n", sizeof(unsigned __int64));
printf("%I64u", product);
getch();
return 0;
}
已经溢出了,这个要不得.