判断输入的数据是否为水仙花数
判断输入的数据是否为水仙花数,输出为0时结束。所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
输入示例:
153
1124
370
237
0
输出示例:
yes
no
yes
no
我的代码如下,但是输入与输出并不符合要求,请打击帮忙看一下。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i, j, k, n;
scanf ("%d",&n);
while (n!=0)
{
i=n/100;//分解出百位
j=n/10%10;//分解出十位
k=n%10;//分解出各位
if (i*100+j*10+k==i*i*i+j*j*j+k*k*k)
printf ("yes\n");
else
printf ("no\n");
scanf ("%d",&n);
}
system ("pause");
return 0;
}
/*
153
yes
234
no
12345
no
370
yes
0
请按任意键继续. . .
*/