完数1000以内有哪些(完数)

导读 以前写的。/*一个数恰好等于它的因子之和.6=1+2+3*/#include /*头文件*/#define N 1000 /*搜索范围在1000以内*/int main(...

以前写的。

/*一个数恰好等于它的因子之和.6=1+2+3*/#include /*头文件*/#define N 1000 /*搜索范围在1000以内*/int main(int argc, char *argv[]) /*主函数*/{ int i; /*循环变量*/ for(i=1;i<=N;i++) /*循环找出小于N的所有完数并输出其因子.*/ { if(wanshu(i)) print_factor(i); continue; } return 0;} /*主函数结束*/int wanshu(int x) /*判断x是否完数*/{ int i,sum=0;// int factor[N]={0}; for(i=1;i<=x;i++) /*对所有x的因子求和*/ { if(x%i==0) sum=sum+i; continue; } if(sum==x*2) return(1); /*如果求和结果等于2x则x是完数*/ else return(0); /*否则不是完数*/} /*完数判断函数结束*/int print_factor(int x) /*打印结果*/{ int i,j,res[1000]={0}; /*i,j为循环变量.res数组记录每个因子.*/ for(i=1;i

免责声明:本文由用户上传,如有侵权请联系删除!