求水仙花数(一个三位数的各个位数的立方和等于这个数本身)
#include <stdio.h>
bool Narcissuss(int number)
{
int a,b,c;
a = number / 100;//获得百位上的数字
b = number / 10 % 10;//获得十位上的数字
c = number % 10;//获得个位上的数字
if(a*a*a + b*b*b + c*c*c == number)//判断是否为水仙花数
{
return true;//是水仙花数返回真
}
else
{
return false;//不是返回假
}
}
测试如下:
int main()
{
int integer;
scanf("%d",&integer);
if(Narcissuss(integer))
{
printf("%d是一个水仙花数\n",integer);
}
else
{
printf("%d不是一个水仙花数\n",integer);
}
return 0;
}