這個有問題嗎?
#include <stdio.h>
#include<math.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/10)-hd*10;
? ? ? ? //獲取三位數字num個位上的數字
? ? ? ? sd =num%10;
? ? ? ? //水仙花數的條件是什么?
? ? ? ? if(pow(hd,3)+pow(td,3)+pow(sd,3)==num)?
? ? ? ? {
? ? ? ? ? ? printf("水仙花數字:%d\n", num);? ??
? ? ? ? }
? ? }
? ? return 0;? ??
}
2019-01-28
不能用pow函數。
pow函數中要保證第一個參數大于0,如果td,sd為0,會產生錯誤。