同http://www.cnblogs.com/MichaelLee2015/p/4402993.html
#include <stdio.h> int main() { int num;//表示输入的数 printf("请输入一个正整数,这个程序将判断此数是否为完全数 ");//提示用户输入 scanf("%d",&num);//获取输入的数 int sum = 0;//表示最后所有因子的和 //思路:找出这个数num所有的因数并且相加得到sum,看是否等于这个数 for (int i = 1; i < num; i++) { if (num % i == 0)//余数为0,即整除,也就是说i为num的因子 { sum += i;//也可以写作sum=sum+i; } } if (sum == num) { printf("%d是完全数 ", num); } else { printf("%d不是完全数 ", num); } return 0; }