短小精悍到不敢相信。
中间的两个1000是完全数的范围(0~1000)可以自由改,看你电脑性能哦ԅ(¯ㅂ¯ԅ)
#include<iostream>
using namespace std;
int main(){
int a=2,b,c;
for (a;a<=1000;a++){
for (c=1,b=0;c<=1000;c++)
if (a%c==0)
b+=c;
if (2*a==b)
cout<<a<<" ";}}