水仙花数的定义是:一个3位数字,其百、十、个位数字的立方之和相加等于原先的数字时,该数字为水仙花数字。那么我们就用C语言来写一写如何判断用户输入的数字是否为水仙花素的程序!
#include<stdio.h>
#include<math.h>//本题为了简化下运算过程,我选择用了个数学函数公式来简化
int main()
{
int i;
scanf("%d",&i);
int a,b,c;
a=i/100;//取原数字的百位数
c=i%10;//取原数字的个位数
b=i/10%10;//取原数字
if(i==pow(a,3)+pow(b,3)+pow(c,3))//判断定义是否成立!
printf("Yes\n");
else
printf("No\n");
return 0;
}
//下面我不要数学函数写一下程序
#include<stdio.h>
int main()
{
int i;
scanf("%d",&i);
int a,b,c,num;
a=i/100;//取原数字的百位数
c=i%10;//取原数字的个位数
b=i/10%10;//取原数字
num=a*a*a+b*b*b+c*c*c;
if(i==num)//判断定义是否成立!
printf("Yes\n");
else
printf("No\n");
return 0;
}
这个便是用户判断一个3位数字是否为水仙数字的C语言程序,当然如果你想要看看更高位次的数字是否为水仙花数字时,这个时候便需要专门探讨研究下该input number的最大除数是多少,要确定的过程大家在努力想一想!我不久会写一个来给大家分享一下。
|