1.5 阶乘和数

一个正整数如果等于组成它的各位数字的阶乘之和,该整数称为阶乘和数。

例如,145=1!+4!+5!,则145是一个三位阶详细和数。是否还有其它三位阶乘和数?共有多少个阶乘和数?

1.5.1 求三位阶乘和数

试求出所有三位阶乘和数:m=abc=a!+b!+c!(其中a为百位数字,b为十位数字,c为个位数字。约定0!=1)。

算法分析如下:

通过循环累乘设计一个求阶乘的函数:jc(x)=x!

对任意一个三位数m,分解其百位数字a,十位数字b,个位数字c。条件差判别:若m等于jc(a)+jc(b)+jc(c),则作打印输出。也可通过a,b,c三重循环组合为三位数m=a*100+b*10+c,然后作条件判别。

#includelong jc(int x);

void main()

{

int a,b,c,m,n;

printf("三位阶乘和数有:");

for(a=1;a<=9;a++) /*a,b,c分别为三位数的百位、十位、个位数字*/

for(b=0;b<=9;b++)

for(c=0;c<=9;c++)

{

m=a*100+b*10+c;

n=jc(a)+jc(b)+jc(c); /*阶乘和条件判别*/

if(m==n) printf("%d\n",m);

}

}

long jc(int x)

{

int i;

long p=1;

for(i=1;i<=x;i++)

p*=i;

return p;

}

程序运行结果:

三位阶乘和数有:145

注:可见三位阶乘和数只有一个 145

C趣味程序(二)(04)求三位阶乘和数.doc

下载Word文档到电脑,方便收藏和打印[全文共620字]

编辑推荐:

下载Word文档

C语言编程求三位数各位之和,C趣味程序(二)(04)求三位阶乘和数相关推荐

  1. C语言编程验证卡布列克,C趣味程序百例(26)卡布列克常数

    83.卡布列克常数 验证卡布列克运算.任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: 1)将组成该四位数的四个数字由大到小排列,形成由这四个数字构成的的四位数: 2)将组成该四位 ...

  2. c语言编程正整数各位数上之和,编写C语言程序,从键盘上输入一个正整数,计算并输出该数各位数字之和。...

    答:输出该数的各位数字之和的源代码如下: #include int fun(int n) { int i; int sum=0; if(n>1000||n 答:int i = scanf(... ...

  3. C语言编程>第二周 ⑧ 两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x……

    例题:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单.有人向队员打听比赛的名单.a说他不和x比,c说他不和x,z比,请编程序找出. 代码如下: /*程序 ...

  4. C语言编程>第二十五周 ③ 下列给定程序中,函数fun的功能是:根据输入的三个边长(整型值),判断能否构成三角形;构成的是等边三角形,还是等腰三角形。若能构成等边三角形函数返回3,若能构成……

    例题:下列给定程序中,函数fun的功能是:根据输入的三个边长(整型值),判断能否构成三角形:构成的是等边三角形,还是等腰三角形.若能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成三角 ...

  5. 100以内质数和用c语言程序,用C语言编程 100内的质数之和

    用C语言编程 100内的质数之和 來源:互聯網  2010-01-23 17:33:00  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 問題描述: 希望C语言 ...

  6. 【c语言】(函数)计算阶乘和数,编程输出所有的三位阶乘和数

    题目: 假设有这样一个三位数m,其百位,十位和个位数字分别是a,b,c,如果m = a! + b! + c!,则这个三位数就称为三位阶乘和数(约定0! = 1) 思路分析: 需要用到3个函数,一个fa ...

  7. C语言编程>第二十五周 ⑤ 下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的 “单词”是指由空格隔开的字符串)。

    例题:下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的 "单词"是指由空格隔开的字符串). 例如,若输入 "good ...

  8. 每周算法题(从三个红球、五个白球、六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案,有1、2、3、4数字,组成无重复的三位数两个乒乓球队进行比赛,各出三人。甲队为a,b,c)

    每周算法题 文章目录 每周算法题 一.从三个红球.五个白球.六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案. 二.有1.2.3.4数字,组成无重复的三位数 两个乒乓球队进行比赛,各出三 ...

  9. python计算一个三位数个位数之和

    #(1)输入一个三位数 n = input("请输入一个三位数") n = int(n) #将 字符串类型 转成 数值 456 #(2)得到百位b100 b100 = n // 1 ...

最新文章

  1. 微信小程序开发工具的基本应用
  2. Python学习笔记4—Python字典元组
  3. The Elements of C# Style -Naming
  4. Oracle数据库几个错误
  5. 【DP】[ZJOI2008][HYSBZ/BZOJ1037]生日聚会Party
  6. 织梦dedecms search.php注入漏洞exp,DedeCms V57 plus/search.php 文件SQL注射0day漏洞
  7. 【最简便解法】1069 微博转发抽奖 (20分)
  8. 机器学习第七篇:详解EM算法
  9. C语言读取load格式文件,求指导,如何用c语言实现读取*.raw格式图像
  10. Python中为啥 ‘abcd‘<‘ad‘ 答案他来啦
  11. SpringBoot实战教程(8)| 整合mybatis-plus
  12. matlab中esp=1.0e-3,ESP系列杂谈(一): eFuse 简介
  13. 多面集的表示定理 (Representation / Resolution / Caratheodory theorem of polyhedral Sets)
  14. 让你的软件支持繁体中文
  15. xilinx_ug903阅读记录
  16. VOIP Codec 三剑客之 ISAC/ILBC -- ISAC (6) Spectrum Encode 模块
  17. 求边长为一的正方体中,面对角线组成的正四面体体积.
  18. 淘宝/天猫/京东/拼多多618抢购软件,抢购助手支持淘金币任务,附上源码
  19. 怎样打印计算机桌面,敬业签电脑桌面便签软件怎么打印便签内容?
  20. 【Visual Studio 】Visual Studio 2019 软件安装

热门文章

  1. java项目2个数据源_springboot项目配置两个数据源的方法
  2. 难以置信:目前人类对导热微观机理的认识约等于0
  3. Digicert关于SSL证书域名验证(DCV)策略变更通知
  4. auto-extending data file /ibdata1 is of a different size 17152 pages (rounded down to MB)
  5. html用户充值页面充值中心,好看的amazeui用户充值界面代码
  6. [最小费用流 || KM算法]hdoj 3395:Special Fish
  7. 1.1 三极管选型(硬件基础系列)
  8. 如何系统全面地自学Java语言?明确后我直接拿到了20K!
  9. 基于Python实现LSTM对股票走势的预测【100010285】
  10. 中策橡胶采用ET工业大脑效果显著,获选IDC中国数字化转型大奖