完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
#include <stdio.h> int check(int n); int main(int argc, char *argv[]) { int i; for(i=1;i<1000;i++){ if(check(i)) printf("%d ",i); } return 0; } int check(int n){ int sum=0; int i; for(i=1;i<n;i++){ if(n%i == 0) sum=sum+i; } return sum==n?1:0; }
输出:
6 28 496