輸出所有的“水仙花數”,所謂“水仙花數”是指一個3位數,其各位數字立方和等於該數本身。例如,153是水仙花數,因為153=1+5+3
答案解析:
從題目當中得到”水仙花數“為一個3位數,則范圍確定為[100, 999]。另外需要獲取該數字的百位數字,十位數字,個位數字相加起來等於該數本身,則我們需要使用到%
除的方式,來獲取每一個位權的數字。
代碼示例:
#include <stdio.h>
int main()
{
//a表示百位數字,b表示十位數字,c表示各位數字
int a, b, c;
for (int i = 100; i <= 999; i++)
{
a = i / 100;
b = (i / 10) % 10;
c = i % 10;
if (a * a * a + b * b * b + c * c * c == i)
{
printf("%d\n", i);
}
}
return 0;
}