判斷是否為水仙花數并且列印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數 本身。
//題目:列印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數 本身。
//例如: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;
}
測試:
