天天看點

計算水仙花數

題目

給你兩個整數n,m,請你求出n到m之間(包括n和m)的所有水仙花數。水仙花數是指一個3位數,其各位數字立方和等于該數字本身,例如153是一個水仙花數,因為153=111+555+333;

輸入格式   輸入資料隻有一行,包含兩個正整數n,m(100<=n<=m<=999),中間用一個空格隔開。

輸出格式   共一行,包含n,m之間的所有水仙花數,每兩個數字之間用一個空格隔開。

輸入樣例 153 153 輸出樣例 153

時間限制:1000ms

c語言

代碼如下

#include <stdio.h>
#include <math.h>
int main()
{   
    int a=0,b=0,c=0,d=0,e=0,f=0;
    scanf("%d %d",&a,&b);
    c=a;
    while(c<=b)
    {   d=c/100;
        f=c%10;
        e=(c-c%10-d*100)/10;
        if(c==d*d*d+e*e*e+f*f*f){
            printf("%d\n",c);
            c++;
        }
        else{c++;}//若不加此else,有可能逾時
    }
    return 0;
}
           

繼續閱讀