完数:
一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3
解析:完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。先求出一个数的所有因子,之后相加,若等于此数,这个数就是完数,输出。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int i = 0;
int j = 0;
int sum = 0;
for (i = 2; i < 1000; i++)//从2开始是因为1只有本身一个因子(最少应该为两个)
{
sum = 0;//用于每次第二层for循环结束后sum进行重置
for (j = 1; j <i; j++)
{
if (i % j == 0)
{
sum += j;//每次因数进行相加,若相加的值正好为i则就是完数
}
}
if (sum == i)
{
printf("%d 是完数\n", i);
}
}
return 0;
}
标签:以内,sum,int,因子,完数,等于,1000
From: https://blog.51cto.com/u_16425777/8987126