C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?

C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?题目题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

大家好,欢迎来到IT知识分享网。

题目

题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位

数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方

+5的三次方+3的三次方。

C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?

水仙花:和水仙花数并没有什么关系

小知识

水仙花数只是自幂数的一种,严格来说3位数的3次幂数才称为水仙花数。

其他位数的自幂数名字:

一位自幂数:独身数

两位自幂数:没有

三位自幂数:水仙花数

四位自幂数:四叶玫瑰数

五位自幂数:五角星数

六位自幂数:六合数

七位自幂数:北斗七星数

八位自幂数:八仙数

九位自幂数:九九重阳数

十位自幂数:十全十美数

C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?

常见水仙花数

三位的水仙花数共有4个:153,370,371,407;

四位的四叶玫瑰数共有3个:1634,8208,9474;

五位的五角星数共有3个:54748,92727,93084;

六位的六合数只有1个:;

七位的北斗七星数共有4个:,,,;

八位的八仙花数共有3个:,,

……

题目分析

因为我们只求三位数的水仙花数,所以关键点就是求出一个三位数的个位、十位、百位。利用for循环控制100-999个数,每个数分解出个位,十位,百位。

比如一个数153,个位可以用取模:153%10=3得到;

十位可以先除10再对10取模:153/10%10=5;

百位直接除100即可:153/100=1。

代码如下:

C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?

好了,欢迎大家提供更好的方法~~~

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/86014.html

(0)
上一篇 2024-10-01 08:26
下一篇 2024-10-03 05:24

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信