天天看点

判断是否为水仙花数并且打印出所有的“水仙花数“,所谓“水仙花数“是指一个三位数,其各位数字立方和等于该数 本身

判断是否为水仙花数并且打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。

//题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。
//例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
#include <stdio.h>
int main()
{
    printf("\t水仙花数是指一个三位数,其各位数字立方和等于该数本身\n");
    int a,b,c;//个,十,百 
    int n;//原来的数 
    printf("请输入你想要判断的数字是否为水仙花数:\n");
    scanf("%d",&n);//输入n  假设:153 
    a=n%10;//个位
    b=n%100/10 ;//十位 
    c=n/100;//百位
//  printf("%d%d%d",a,b,c);
if(n==(a*a*a+b*b*b+c*c*c))
{
    printf("%d是水仙花数\n",n);
}
else
{
//  return NULL;
    printf("%d不是水仙花数\n",n);
}

printf("\n\n");
printf("如下是求所有水仙花数可提供参考答案:\n"); 
for(int i=100;i<1000;i++)
{
    a=i%10;//个位
    b=i%100/10 ;//十位 
    c=i/100;//百位
    if(i==(a*a*a+b*b*b+c*c*c))
    {
        printf("%d=%d^3+%d^3+%d^3是水仙花数\n",i,a,b,c);
    } 

}
    return 0;
}      

测试:

判断是否为水仙花数并且打印出所有的“水仙花数“,所谓“水仙花数“是指一个三位数,其各位数字立方和等于该数 本身
判断是否为水仙花数并且打印出所有的“水仙花数“,所谓“水仙花数“是指一个三位数,其各位数字立方和等于该数 本身

继续阅读