什么是完数?

如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”)。

例如,6的因子为1、2、3,而 6=1+2+3,因此6是“完数”。

 问题分析

根据完数的定义,解决本题的关键是计算出所选取的整数m(m的取值范围不固定)的因子(因子就是所有可以整除这个数的数),将各因子累加到变量sum (记录所有因子之和),若sum等于m,则可确认m为完数,反之则不是完数。

代码:

#include <stdio.h>
int fun(int n)//判断n是否为完数,如果是,则返回1,否则返回0.
{int i, sum = 0;for (i = 1; i < n; i++)//遍历小于n的整数。if (n % i == 0)//可以整除,为真因子。sum += i;//累加每个真因子到sum上。 if (sum == n)return 1; //符合完数条件,返回1。elsereturn 0;//不是完数,返回0。
}
int main()
{int m;for (m = 1; m < 1000; m++){if (fun(m)==1)printf("%d\n", m);}
}

【C语言】创建一个函数,判断某一正整数是否为完数,并调用这个函数找出1000以内所有完数...相关推荐

  1. c语言---编写程序找出1000以内的完数

    所谓完数:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如:6的因子为1,2,3,而6=1+2+3,因此6是"完数".编程序找出1000以内的所有完数 ...

  2. c语言编程输出1000以内能被3整除的数,【C语言】找出1000以内可以被3整除的数

    分别用while,do-while,for语句实现 方法一:while #include int main() { int m; m = ; while (m<=) { if (m % == ) ...

  3. 求出1000以内所有完数(C语言)

    编算法求出1000以内所有完数(C语言) 题目:编算法找出1000以内所有完数 完数:其因数之和=自身的数,且因数不含自身.如:28的因子为1.2.4.7,14,而28=1+2+4+7+14.因此28 ...

  4. C语言经典习题之编写一个程序,找出1000以内所有的完数。

    编写一个程序,找出1000以内所有的完数,所谓完数就是一个数恰好等于它的因子之和, 例如6=1+2+3,6就是一个完数. //编写一个程序,找出1000以内所有的完数,所谓完数就是一个数恰好等于它的因 ...

  5. 1000以内完数c语言程序_编程找出1000以内的所有完数

    编程找出1000以内的所有完数 #include "stdio.h" #include "conio.h" main() { static int k[10]; ...

  6. 【C语言】找出1000以内的水仙花数

    什么是水仙花数? 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 代码1: #include<stdio.h> ...

  7. 【C语言】创建一个函数,判断某一正整数是否为素数,并调用这个函数找出1000以内所有素数...

    #include <stdio.h> int fun(int x) { int n; for(n=2;n<=x-1;n++) if(x%n==0) break; if(n>=x ...

  8. 【C语言】创建一个函数,判断某一正整数是否为水仙花数,并调用这个函数找出1000以内所有水仙花数...

    #include <stdio.h> int fun(int x) {int a, b, c;a = x / 100;b = x % 100 / 10;c = x % 10;if (x = ...

  9. 【C语言】(for循环嵌套)找出1000以内的水仙花数

    什么是水仙花数? 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 分析: 根据定义可知: a*a*a+b*b*b+c*c*c ...

最新文章

  1. 区块链第二层扩容方案Plasma和Rollups
  2. mfc 按钮点第一下没触发消息 第二下才触发消息_34 详细干货 | 给回避型伴侣发消息,他们不回复,该怎么办?...
  3. MET 3P5: 工业工程
  4. wxWidgets:wxChoicebook类用法
  5. 洛谷 - P4783 【模板】矩阵求逆(高斯消元求逆矩阵)
  6. 前端学习(2788):完成图片商品数据页面渲染
  7. 系统管理员节日 网民的感恩日
  8. 小米第二款5G手机是小米9?升级版小米9 配置强悍!
  9. 中国首家干线物流联合创新中心成立
  10. 如何衡量多元线性回归模型优劣
  11. stm32定时器编码器模式原理及配置
  12. Atitit.并发测试解决方案(2) -----获取随机数据库记录 随机抽取数据 随机排序 原理and实现
  13. allegro中10mil过孔_Allegro中增加过孔的方法
  14. win10如何桌面添加计算机,win10系统桌面怎么添加计算机等图标
  15. VMware Workstation Pro 安装教程
  16. 跨考计算机,一战398分成功上岸经验总结
  17. mysql:mysql的基本函数
  18. 计算机键盘上每个键的作用
  19. Java面试题全集(上)-基础知识
  20. 线性代数系列(1)行列式

热门文章

  1. linux设置date-hwclock-clock
  2. 机器学习速成课程 | 练习 | Google Development——编程练习:使用 TensorFlow 的起始步骤
  3. 【AI视野·今日Robot 机器人论文速览 第三十一期】Fri, 15 Apr 2022
  4. niginx反向代理解决前后端跨域问题
  5. Nginx学习之十四-GDB调试Nginx初试
  6. 装箱与拆箱 c# 1613534570
  7. 爬虫-练习引导-豆办电影爬取-json数据的处理
  8. javascript-演练-二级联动下拉框
  9. python-temp-0626随堂
  10. SMTP、POP3、IMAP的区别