简介:水仙花数,是一个三位数字,且每一位数字的立方之和等于本身。
直接上代码吧。
#include <stdio.h>
int Water_Flower(int n)
{
int temp=n,k=0,sum=0,wei=0;//temp为n的临时值,k为每一次取的数字上,单个位置的数字 sum是各个数字立方和
while(temp!=0) //wei表示输入进来的数字总位数
{
wei++;
k=temp%10;
sum=sum+k*k*k;//计算每个数字立方之和
temp=temp/10;
}
if(wei==3 && sum == n)//判断水仙花
return 1;
}
int main()
{
printf("输入一个n,判断是否为水仙花数\n");
int n;
scanf("%d",&n);
int p=Water_Flower(n);//是水仙花,返回1,赋值给p,否则返回0
if(p==1)
printf("%d是水仙花数\n",n);
else
printf("%d不是水仙花\n",n);
}