各位前輩誰能講一下,謝謝!
#include <stdio.h>
int main()
{
? ? //定義三位數(shù)num,個位數(shù)sd,十位數(shù)td,百位數(shù)hd
? ? int num, sd, td, hd;
? ? //循環(huán)所有三位數(shù)
? ? for(? ??? ;? ?? ?;? ? ?? )
? ? {
? ? ? ? //獲取三位數(shù)字num百位上的數(shù)字
? ? ? ? hd =? ? ? ? ?? ? ? ? ?;
? ? ? ? //獲取三位數(shù)字num十位上的數(shù)字
? ? ? ? td =? ? ? ? ?? ? ? ? ?;
? ? ? ? //獲取三位數(shù)字num個位上的數(shù)字
? ? ? ? sd =? ? ? ? ?? ? ? ? ?;
? ? ? ? //水仙花數(shù)的條件是什么?
? ? ? ? if(? ? ???? ? ? ? ? ? ? ? ?)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數(shù)字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}
2021-01-09
思路:水仙花數(shù)的條件1、三位數(shù)---->范圍在100~1000之間---->for語句為for(num=100;num<1000;num++);
????????????????????????????????? 2、滿足a*100+b*10+c=a*a*a+b*b*b+c*c*c--------->if判斷條件為
????????????????????????????????????????????????????????if(num == hd*hd*hd + td*td*td + sd*sd*sd);
????????????剩下的就只有求三位數(shù)的個、十、百位的問題;依據(jù)int數(shù)據(jù)類型特點,num/100可以取到num的百位上的數(shù)字,num%100/10得到num的十位數(shù)字,num%10或num%100%10得到num的個位數(shù)字,所以完整解答如下:
#include <stdio.h>
int main()
{
? ? //定義三位數(shù)num,個位數(shù)sd,十位數(shù)td,百位數(shù)hd
? ? int num, sd, td, hd;
? ? //循環(huán)所有三位數(shù)
? ? for(? ?num=100? ;? num<1000? ?;? ? num++? )
? ? {
? ? ? ? //獲取三位數(shù)字num百位上的數(shù)字
? ? ? ? hd = num/100;
? ? ? ? //獲取三位數(shù)字num十位上的數(shù)字
? ? ? ? td =num%100/10;
? ? ? ? //獲取三位數(shù)字num個位上的數(shù)字
? ? ? ? sd =num%100%10;
? ? ? ? //水仙花數(shù)的條件是什么?
? ? ? ? if( num==hd*hd*hd+td*td*td+sd*sd*sd )?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數(shù)字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}
2021-01-06
#include <stdio.h>
int main()
{
??? //定義三位數(shù)num,個位數(shù)sd,十位數(shù)td,百位數(shù)hd
??? int num, sd, td, hd;
??? //循環(huán)所有三位數(shù)
??? for(?? num=100? ; num<1000?? ; num++? )
??? {
??????? //獲取三位數(shù)字num百位上的數(shù)字
??????? hd =? num/100??????????? ;
??????? //獲取三位數(shù)字num十位上的數(shù)字
??????? td =num%100/10???????? ;
??????? //獲取三位數(shù)字num個位上的數(shù)字
??????? sd =num%10??????? ;
??????? //水仙花數(shù)的條件是什么?
??????? if(num==hd*hd*hd+td*td*td+sd*sd*sd?????????????? )
??????? {
??????????? printf("水仙花數(shù)字:%d\n", num);???
??????? }
??? }
??? return 0;???
}
2021-01-06
? for(num=100;num<1000;num++)
? ? {
? ? ? ? //獲取三位數(shù)字num百位上的數(shù)字
? ? ? ? hd =num/100;
? ? ? ? //獲取三位數(shù)字num十位上的數(shù)字
? ? ? ? td =num/10 - hd*10;
? ? ? ? //獲取三位數(shù)字num個位上的數(shù)字
? ? ? ? sd =num - hd*100 - td*10;
? ? ? ? //水仙花數(shù)的條件是什么?
? ? ? ? if(num == hd*hd*hd + td*td*td + sd*sd*sd)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數(shù)字:%d\n", num);? ??
? ? ? ? }
? ? }