首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

为何不能输出1000以内的完数啊求大家改错

2013-01-02 
为什么不能输出1000以内的完数啊???求大家改错#includestdio.hint main(){int i, j, k, n,sum, a[100]f

为什么不能输出1000以内的完数啊???求大家改错
#include<stdio.h>

int main()
{
int i, j, k, n,sum, a[100];

for(i = 2; i <= 1000; i++)
{
    n = -1;
    sum = 0;
for(j = 1; j < i; j++)
{
if(i % j == 0)
{
    n++;
a[n] = j;
sum  = sum + j;
}
}
if(sum == i)
{
printf("%d its factors are ",sum);
for(k = 0; k <=n; k++)
printf("%d,", a[k]);
}
}

return 0;
}

[解决办法]
我这里没有问题啊,三个完数都很正常
不知道你的问题具体是什么
[解决办法]
楼主的代码没问题啊:
6 its factors are:1,2,3,
28 its factors are:1,2,4,7,14,
496 its factors are:1,2,4,8,16,31,62,124,248
[解决办法]
的确,代码没错!!

热点排行