A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 猜不透 中级黑马   /  2016-6-3 23:06  /  1363 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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

2 个回复

倒序浏览
#include<stdio.h>
int main() {
    printf("1-999之内的完数:\n");
    //使用for循环遍历1-999所有的数
    for(int i = 1;i <= 999;i++) {
        //声明一个变量保存i的因子之和
        int sum = 0;
        //使用for循环求i的因子
        for(int j = 1;j < i;j++) {
            //使用if结构求i的因子并把因子进行累加
            if(i % j == 0) {
                sum += j;
            }
        }
        //使用if结构判断i是不是完数并输出结果
        if(i == sum) {
            printf("%4d",i);
        }
    }
    printf("\n");
    return 0;
}
回复 使用道具 举报
我是来学习的,还没有人回答呢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马