請問我的這段求水仙花數的代碼有什么問題?
include <stdio.h>
int main()
{
? ? //定義三位數num,個位數sd,十位數td,百位數hd
? ? int num, sd, td, hd;
? ? //循環所有三位數
? ? for(? ?num=100 ;? num<1000? ?;? ? num++? )
? ? {
? ? ? ? //獲取三位數字num百位上的數字
? ? ? ? hd =(int) num/100? ? ? ? ;
? ? ? ? //獲取三位數字num十位上的數字
? ? ? ? td = (int) (num-hd*100)/10? ? ? ;
? ? ? ? //獲取三位數字num個位上的數字
? ? ? ? sd =? ? num - hd*100- sd*10? ? ? ? ? ;
? ? ? ? //水仙花數的條件是什么?
? ? ? ? if( num == hd*hd*hd+sd*sd*sd+td*td*td? ? ? ? ? ? ? ? )?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}
2019-01-24
?sd =? ? num - hd*100- sd*10? ? ? ? ? ;
正確的應該是???sd=num - hd*100- td*10?
2019-01-28
這個強轉是不是不需要啊
2019-01-24
?sd =? ? num - hd*100- sd*10? ? ? ? ? ;