寻找100-1000内水仙花数列(c语言实现)

首先简单介绍一下水仙花数列中的数字的特点:是一个三位数,且其各位数字的立方和等于这个数字。如153=1的三次方+5的三次方+3的三次方。

设计思路:1 将100-1000内的所有数列举出来(即所有的三位数),设为n
2 将数字的十位 个位 百位 数分别拆分出来,分别设为a,b,c
3 判断a,b,c的立方和是否等于n
4 如果满足上述条件则输出数字n

代码及具体解释如下:`在这里插入/时间:2019.10.10
设计功能:寻找100-1000内的水仙花数
设计目的:练习for if 循环
操作界面:vs2019
/

include

int main()
{
int n,a, b, c; //声明调用变量n,a,b,c,d
for (n=100;n < 1000;n++)//寻找100-1000内的所有数
{
a = n / 100;//提取百位数(由于int是声明整数的符号,所以后面的小数被忽略,得到百位数)
b = (n - a * 100) / 10;//提取十位数(与上类似)
c = n % 10;//求n除10的余数,提取个位数
if (n == a * a * a + b * b * b + c * c * c )//判断各位数的立方和是否等于n
printf("%d\n", n);//如果满足条件,则输出满足条件的n
}
}
/运行结果:153
370
371
407
/`

你可能感兴趣的:(水仙花,c语言)