【小知识点】一个数的因子最大不超过该数的1/2
【代码】
#include <stdio.h>
#include <stdlib.h>
#define maxSize 1000
int factors(int num)
{
int j;
int sum;
sum = 0;
for (j = 1; j <= num / 2; ++j)
{
if (num%j == 0)
sum += j;
}
return sum;
}
int main()
{
int i, s;
for (i = 1; i <= 1000; ++i)
{
s = factors(i);
if (i == s)
printf("%d ", i);
}
return 0;
}
【结果】