這個位十位百位取余,怎么取啊,真的不是很理解
? //定義三位數num,個位數sd,十位數td,百位數hd
? ? int num, sd, td, hd;
? ? //循環所有三位數
? ? for(? num=1? ; num<=999? ;? num++? )
? ? {
? ? ? ? //獲取三位數字num百位上的數字
? ? ? ? hd =? num%100==0 ;
? ? ? ? //獲取三位數字num十位上的數字
? ? ? ? td =num%10==0? ? ;
? ? ? ? //獲取三位數字num個位上的數字
? ? ? ? sd =? ? ? ? ?? ? ? ? ?;
? ? ? ? //水仙花數的條件是什么?
? ? ? ? if(? ? ???? ? ? ? ? ? ? ? ?)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數字:%d\n", num);? ??
? ? ? ? }
? ? }
2022-06-07
num 是三位數,所以應該從100開始;
hd=num/100, 你用的是取余,而且==0 沒看懂是干嘛的;
td=(num-100*hd)/10
sd=num-100*hd-td*10??
2022-04-09
#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+td*td*td+sd*sd*sd)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}