找出1000以内的所有完数
完数的定义是:
一个数如果恰好等于它的各个因子之和,这个数就成为完数。举个例子吧,6的因子为1,2,3,且6=1+2+3,所以称6为完数。因子为可以被积整除的数。现在找出1000以内的所有完数并输出:
(全部代码在底部)
Ⅰ.利用for循环寻找每一个小于1000的数(num),并用if判断i是否为num的因子;
代码如下:

Ⅱ.判断和值是否和所寻找的和值相等(完数),是便输出;
代码如下:

如果愿意勤奋一点,可以用笔在纸上先构建好流程,之后顺着流程敲代码就好了。
全部代码献上:
#include <stdio.h>
int main(){
int num,sum,i;
for(num=1;num<=1000;num++){
//每循环一次,重置一次和
sum = 0;
for(i=1;i<num;i++){
if(num%i == 0){
sum += i;
}
}
if(sum == num){
printf("%d ",num);
}
}
return 0;
}
运行结果:
6 28 496
2342

被折叠的 条评论
为什么被折叠?



