判断一个整数是否为“水仙花数”。所谓“水仙花数”是指一个三位的整数,其各位数字立方和等于该数本身。例如:153 是一个“水仙花数”, 因为 153=13+53+33。
注意: 用带有一个输入参数的函数(或方法)实现,返回值类型为布尔类型。
#include <stdio.h>
//传入一个数字,判断是否为水仙花数,返回布尔类型
bool narcissistic(int i) {
int a =i / 1 % 10; //个位
int b =i / 10 % 10; //十位
int c =i / 100 % 10; //百位
if ((a*a*a)+(b*b*b) +( c*c*c) == i)
return true;
else
return false;
}
int main()
{
int i;
printf("请输入一个整数:");
scanf("%d", &i);
if (narcissistic(i))
printf("%d是水仙花数\n",i);
else
printf("%d不是水仙花数\n",i);
return 0;
}