錯哪了 結果都一樣
#include <stdio.h>
int main()
{
? ? //定義三位數num,個位數sd,十位數td,百位數hd
? ? int num, sd, td, hd;
? ? //循環所有三位數
? ? for(num=100;num<1000;num++)
? ? {
? ? ? ? //獲取三位數字num百位上的數字
? ? ? ? hd = num/100;
? ? ? ? //獲取三位數字num十位上的數字
? ? ? ? td = (num%100)/10;
? ? ? ? //獲取三位數字num個位上的數字
? ? ? ? sd = num%10;
? ? ? ? //水仙花數的條件是什么?
? ? ? ? if(num== hd*hd*hd + sd*sd*sd + td*td*td)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}
2020-07-12
if(num==hd*hd*hd+td*td*td+sd*sd*sd(改成這個應該可以了)
2020-07-12
它所認可的就那兩種情況,其余的無論對錯都判斷為錯誤
2020-07-12
你這個其實沒有錯,邏輯上是沒有問題的,只不過這個是題目它不僅檢查結果還檢查代碼所以并沒有考慮全面