好奇怪,為什么沒(méi)有153呢
#include <stdio.h>
int main()
{
??? //定義三位數(shù)num,個(gè)位數(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/10)/10???????? ;
??????? //獲取三位數(shù)字num個(gè)位上的數(shù)字
??????? sd =num%10???????? ;
??????? //水仙花數(shù)的條件是什么?
??????? if(num == hd * hd * hd + td* td*td + sd *sd *sd )
??????? {
??????????? printf("水仙花數(shù)字:%d\n", num);???
??????? }
??? }
??? return 0;???
}
2015-11-05
因?yàn)閠d=(num/10)/10這行代碼邏輯錯(cuò)了,這樣獲取到的值是百位上的數(shù),不是十位上的數(shù)
應(yīng)該改為td = (num/10) % 10