目录
题目
分析思路
代码
题目
编程输出三位数的水仙花数
标准的 水仙花数 就是三位数,即将三位数的个位;十位;百位取出来,分别三次方相加,若个位;十位;百位三次方相加与原来的三位数相等,那么这个数就是水仙花数。
例如:153=1*1*1+5*5*5+3*3*3。
水仙花数只是自幂数的一种,严格来说3位数的3次幂数才称为水仙花数。
附:其他位数的自幂数名字
一位自幂数:独身数
三位自幂数:水仙花数
四位自幂数:四叶玫瑰数
五位自幂数:五角星数
六位自幂数:六合数
七位自幂数:北斗七星数
八位自幂数:八仙数
九位自幂数:九九重阳数
十位自幂数:十全十美数
分析思路
我们使用for循环得到所有的三位数,然后将三位数分别拆解出个位、十位、百位。
然后求三次幂,最后再用 i f 语句求证是否与原数相等,相等则为水仙花数
代码
#include <stdio.h>
void main()
{
int i, a, b, c, x;
for (i = 100; i < 1000; i++)
{
a = i % 10;
b = i % 100 / 10;
c = i / 100;
x = (a * a * a + b * b * b + c * c * c);
if (x == i)
printf("%d是水仙花数\n",x);
}
}
希望这篇文章对你有用,如有错误请指出,我会改正哒。