[C] C语言 找出1000以内的所有完数 →→→→→进入此内容的聊天室

来自 Red Bee, 2024-03-21, 写在 C, 查看 15 次.
URL http://www.code666.cn/view/c7f8b52d
  1. 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=123.编程找出1000以内的所有完数。
  2.  
  3. #include<stdio.h>
  4. #define N 1000
  5. int main()
  6. {
  7.     int i,j,k,n,sum;
  8.     int a[256];
  9.     for(i=2;i<=N;i++)
  10.     {
  11.         sum=a[0]=1;
  12.         k=0;
  13.         for(j=2;j<=(i/2);j++)
  14.         {
  15.             if(i%j==0)
  16.             {
  17.                 sum+=j;
  18.                 a[++k]=j;
  19.             }
  20.            
  21.         }
  22.         if(i==sum)
  23.         {
  24.             printf("%d=%d",i,a[0]);
  25.             for(n=1;n<=k;n++)
  26.                 printf("+%d",a[n]);
  27.             printf("\n");
  28.         }
  29.        
  30.     }
  31.     return 0;
  32. }

回复 "C语言 找出1000以内的所有完数"

这儿你可以回复上面这条便签

captcha