c语言打印水仙花算法(c语言打印输出所有的水仙花数)
在生活中,很多人可能想了解和弄清楚C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?的相关问题?那么关于c语言打印水仙花 算法的答案我来给大家详细解答下。
题目
题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位
数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方
+5的三次方+3的三次方。
水仙花:和水仙花数并没有什么关系
小知识
水仙花数只是自幂数的一种,严格来说3位数的3次幂数才称为水仙花数。
其他位数的自幂数名字:
一位自幂数:独身数
两位自幂数:没有
三位自幂数:水仙花数
四位自幂数:四叶玫瑰数
五位自幂数:五角星数
六位自幂数:六合数
七位自幂数:北斗七星数
八位自幂数:八仙数
九位自幂数:九九重阳数
十位自幂数:十全十美数
常见水仙花数
三位的水仙花数共有4个:153,370,371,407;
四位的四叶玫瑰数共有3个:1634,8208,9474;
五位的五角星数共有3个:54748,92727,93084;
六位的六合数只有1个:548834;
七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;
八位的八仙花数共有3个:24678050,24678051,88593477
......
题目分析
因为我们只求三位数的水仙花数,所以关键点就是求出一个三位数的个位、十位、百位。利用for循环控制100-999个数,每个数分解出个位,十位,百位。
比如一个数153,个位可以用取模:153%10=3得到;
十位可以先除10再对10取模:153/10%10=5;
百位直接除100即可:153/100=1。
代码如下:
好了,欢迎大家提供更好的方法~~~
温馨提示:通过以上关于C语言经典算法:打印“水仙花”数,你知道什么是水仙花数吗?内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。