问题及代码:
/*
*Copyright (c)2015,大连东软信息学院
*All rights reserved.
*文件名称:10 16 8.c
*作 者:陈振
*完成日期:2016年4月7日
*版 本 号: v1.0
*问题描述:输出1~1000的完数(1不是完数)
*程序输入:
*程序输出:
*/
#include <stdio.h>
int main(void)
{
int i,j,sum=0;
for(i=2;i<=1000;i++){
for(j=1;j<i;j++){
if(i%j==0)
sum+=j;
}
if(sum==i){
printf("%d=1",sum);
for(j=2;j<i;j++){
if(i%j==0)
printf("+%d",j);
}
}
if(sum==i){
printf("\n");
}
sum=0;
}
return 0;
}
运行结果: