6-1 水仙花数判断 (10分)
本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=13+53+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
函数接口定义:
int func(const int N);
其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。
裁判测试程序样例:
#include <stdio.h>
int func(const int N);
int main()
{
int N;
scanf("%d", &N);
printf("%d\n", func(N));
return 0;
}
/* 请在这里填写答案 */
输入样例:
153
输出样例:
1
#include<math.h>
int func(const int N)
{
int flag=0;
int a , b , c;
a=N%10;
a=pow(a,3);
b=(N/10)%10;
b=pow(b,3);
c=N/100;
c=pow(c,3);
if(a+b+c==N&&N!=1){
flag=1;
}
return flag;
}