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

请问一个简单但较怪的有关问题

2013-04-09 
请教一个简单但较怪的问题。#include stdio.hint main() { int i2,j1,sum for(i1000i++) { sum0

请教一个简单但较怪的问题。
#include <stdio.h>

int main()

 {
 int i=2,j=1,sum;
 for(;i<=1000;i++)
 {
 sum=0;
 for(j=1;j<i;j++)
 if((i%j)==0)
 sum=sum+j;
     if(i==sum)
 {
 printf("%d its factors are");
 for(j=1;j<i;j++)
 if((i%j)==0)
 printf(" %d",j);
     printf("\n");
 }
 }
 return 0;
 }

结果部分数据较怪,不知是否与电脑有关,大家尝试下。

谢谢。
[解决办法]
你想要计算什么   是不是sum=0;这有问题
[解决办法]
此处


printf("%d its factors are",i);

楼主什么问题。。。
[解决办法]
较怪是什么意思啊?让我们猜啊,请把问题说清楚
[解决办法]
楼主是不是相求1000以内的完全数,完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
下面是对你的代码的简单的修改,参考一下吧~

#include <stdio.h>

int main()
{
int i=2,j=1,sum, k;
for(;i<=1000;i++)
{
sum=0;
for(j=1;j<i;j++)
if((i%j)==0)
sum=sum+j;
if(i==sum)
{
printf("%d its factors are", i);
for(k = 1;k < i;k++)
if((i%k)==0)
printf(" %d",k);
printf("\n");
}
}
return 0;
}

热点排行