# include <stdio.h>
//求100-999中的水仙花数。三数abc,满足a*a*a+b*b*b+c*c*c=abc,则称abc为水仙花数。
//所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
void main()
{
int i,j,k,n;
printf("水仙花数:\n");
for (n=100; n<1000; n++)
{
i=n/100;//求百位
j=(n-(i*100))/10;//减去百位,变成2位数,求十位
k=n%10;//求个位
if(i*i*i+j*j*j+k*k*k==n)//是水仙花数的条件。
{
printf("%d ",n);
}
}
}
//此程序使用了两个循环:for嵌套了if
//先用for将三个数分离之后,得到a,b,c。进入if循环,满足则输出。
//不满足,则利用for循环增加步值,再进入if循环。知道不满足for循环条件。
//求100-999中的水仙花数。三数abc,满足a*a*a+b*b*b+c*c*c=abc,则称abc为水仙花数。
//所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
void main()
{
int i,j,k,n;
printf("水仙花数:\n");
for (n=100; n<1000; n++)
{
i=n/100;//求百位
j=(n-(i*100))/10;//减去百位,变成2位数,求十位
k=n%10;//求个位
if(i*i*i+j*j*j+k*k*k==n)//是水仙花数的条件。
{
printf("%d ",n);
}
}
}
//此程序使用了两个循环:for嵌套了if
//先用for将三个数分离之后,得到a,b,c。进入if循环,满足则输出。
//不满足,则利用for循环增加步值,再进入if循环。知道不满足for循环条件。