永发信息网

C语言 一个数如果恰好等于它的因子之和,这个数就称为“完数”。如6=1+2+3.找出1000以内的所有完数。

答案:1  悬赏:70  手机版
解决时间 2021-04-14 10:07
  • 提问者网友:我们很暧昧
  • 2021-04-14 01:40
C语言 一个数如果恰好等于它的因子之和,这个数就称为“完数”。如6=1+2+3.找出1000以内的所有完数。
最佳答案
  • 五星知识达人网友:末日狂欢
  • 2021-04-14 01:46
sum值 在每次进循环的时候 重新初始化一次 不然累加起来就出错了
#include 
void main()
{
 int num,sum=0,m;
 printf("1 "); 
 for(num=2;num<=1000;num++)//控制num一直到1000 
    {
       sum = 0;//加一句这个。
     for(m=1;m        {
         if(num%m==0)
         {
          sum=sum+m;//num因子之和 
         }
        }
        if(sum==num)//判断num是否为完数 
        {
         printf("%d ",num);
        }
 }
 
}试试吧

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯