文章目录

  • 题目
  • 一、分析
  • 二、代码
  • 总结



题目

🐷一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3,编程找出1000以内的所有完数。


一、分析

🐷利用两层for函数求即可。

二、代码

🐷代码如下(示例):

/*求完数*/
#include<stdio.h>
int main(void){
    /*定义i为1到1000的数*/
    for(int i=2;i<=1000;i++){
        int sum = 0;    //为每一个i定义一个因数的和
        /*定义j求每一个i的因数*/
        for(int j=1;j<i;j++){
            if(i%j==0){
                sum += j;   //求i所有因数和
            }
        }
        /*判断因数和是否与i相等*/
        if(sum==i){
            printf("%d\n",i);
        }
    }
    return 0;
}

总结

🐯for()的嵌套使用十分常见,一定要弄清每一层的for()函数所代表的含义🐯



2021.12.28