零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 常用函数
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 图像处理
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 算法/面试
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 项目实战
一.结果演示
6 its factors are 1, 2, 3,
28 its factors are 1, 2, 4, 7, 14,
496 its factors are 1, 2, 4, 8, 16, 31, 62, 124, 248,
二.源代码
程序分析:一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子是1,2,3,而6=1+2+3,因此6为完数,源码如下:
[wppay]
/************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C/C++ 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1 + 2 + 3. 编程找出 1000 以内的所有完数
//@Time:2021/10/01 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/************************************************************************/
#include <stdio.h>
#include <math.h>
#include <windows.h>
int main()
{
int i, j, sum; /* i表示要判断的数,j表示因子,sum表示因子之和*/
for (i = 2; i <= 1000; i++)
{
sum = 1;
for (j = 2; j <= i / 2; j++)
if (i % j == 0) /* 判断i能否被j整除,能的话j即为因子 因子不包括自身 */
sum += j;
if (sum == i) /* 判断此数是否等于因子之和 */
{
printf("%d its factors are 1, ", i); /* 输出该数 */
for (j = 2; j <= i / 2; j++)
if (i % j == 0)printf("%d, ", j); /* 输出因子 */
printf("\n");
}
}
}
[/wppay]
开通 vip 会员可免费阅读所有文章哟
代码下载:code.c
C4996 ‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
三.猜你喜欢
- C/C++ 有 1 、 2 、 3 、 4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少
- C/C++ 企业发放的奖金根据利润提成。利润 (i) 低于或等于 10 万元时,奖金可提 10% ;利润高 于 10 万元,低于 20 万元时,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可可提 成 7.5% ; 20 万到 40 万之间时,高于 20 万元的部分,可提成 5% ; 40 万到 60 万之间时高于 40 万元的部分,可提成 3% ; 60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5% ,高于 100 万元时,超过 100 万元的部分按 1% 提成,从键盘输入当月利润 i ,求应发放奖金总数
- C/C++ 一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少
- C/C++ 输入某年某月某日,判断这一天是这一年的第几天
- C/C++ 输入三个整数 x,y,z ,请把这三个数由小到大输出
- C/C++ 用 * 号输出字母 c 的图案
- C/C++ 要求输出国际象棋棋盘
- C/C++ 古典问题:有一对兔子,从出生后第 3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- C/C++ 判断 101-200 之间有多少个素数,并输出所有素数
- C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方
- C/C++ 将一个正整数分解质因数。例如:输入 90, 打印出 90=233*5
- C/C++ 利用条件运算符的嵌套来完成此题:学习成绩 >=90 分的同学用 A 表示, 60-89 分之间的用 B 表示,60 分以下的用 C 表示
- C/C++ 输入两个正整数 m 和 n ,求其最大公约数和最小公倍数
- C/C++ 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
- C/C++ 求 s=a+aa+aaa+aaaa+aa…a 的值,其中 a 是一个数字。例如 2+22+222+2222+22222( 此时共有 5 个数相加 ) ,几个数相加有键盘控制
- C/C++ 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1 + 2 + 3. 编程找出 1000 以内的所有完数
ChatGPT 3.5 国内中文镜像站免费使用啦
暂无评论内容