輸出所有的“水仙花數”,所謂“水仙花數”是指一個3位數,其各位數字立方之和等于該數本身,
例如,153是一個水仙花數,因為153=13+53+33
解題思路:水仙花數的解題思路是把給出的某個三位數的個位、十位、百位分別拆分,并求其立方和,程式能正常運行并準確輸出“水仙花數”,
定義i為水仙花數,運用for回圈
for (? i=100;? i<=999;?i++)
先執行?,再執行?判斷條件是否滿足,
滿足執行下列花括號,最后執行?,一次回圈結束;
再執行?判斷條件是否滿足,
滿足執行下列花括號,最后執行?,二次回圈結束;
其中?只在第一次回圈時執行一次;
若是?不成立則回圈結束,執行printf()陳述句;
#include<stdio.h>
int main()
{
printf("輸出水仙花數:\n");
int i, a, b, c;
for (i = 100; i <= 999; i++) //整數的取值范圍
{
int a = i % 10;//個位數
int b = (i / 10) % 10;//十位數
int c = i / 100;//百位數
if (i == a * a * a + b * b * b + c * c * c) //各位上的立方和是否與原數n相等
printf("%d\t", i);
}
return 0;
}
輸出結果展示:水仙花數是153 370 371 407

如果有不懂的地方可以在評論里面提出來,我會盡自己的能力去解答(^^)
歡迎大家進行指正評論,共同進步!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/234965.html
標籤:其他
上一篇:2020 icpc 上海 云游記
