问答详情
源自:4-9 循环结构之for循环(二)

为什么我使用num<=999,就无法运行?

#include <stdio.h>

int main()

{

    //定义三位数num,个位数sd,十位数td,百位数hd

    int num, sd, td, hd;

    //循环所有三位数

    for(   num=100  ;  num<=999   ;    num++  )

    {

        //获取三位数字num百位上的数字

        hd =        num/100         ;

        //获取三位数字num十位上的数字

        td =        (num-num/100*100)/10         ;

        //获取三位数字num个位上的数字

        sd =        num-num/100*100-(num-num/100*100)/10*10         ;

        //水仙花数的条件是什么?

        if(     num==hd*hd*hd+td*td*td+sd*sd*sd                 ) 

        {

            printf("水仙花数字:%d\n", num);    

        }

    }

    return 0;    

}


提问者:SIMONWUYU 2018-01-02 23:15

个回答

  • 慕瓜3777088
    2018-01-21 15:11:51

    改后代码

    #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-num/100*100)/10         ;
            //获取三位数字num个位上的数字
            sd =        num-num/100*100-(num-num/100*100)/10*10         ;
            //水仙花数的条件是什么?
            if(     num==hd*hd*hd+td*td*td+sd*sd*sd                 ) 
            {
                printf("水仙花数字:%d\n", num);    
            }
        }
        return 0;    
    }


  • 慕瓜3777088
    2018-01-21 14:59:08

    在慕课网中,要求“num<1000”,才能运行,在其他c程序编译器可以运行成功。希望采纳!



  • 依y偎
    2018-01-03 10:53:27

    #include <stdio.h>

    int main()

    {

        //定义三位数num,个位数sd,十位数td,百位数hd

        int num, sd, td, hd;

        //循环所有三位数

        for(   num=100  ;  num<=999   ;    num++  )

        {

            //获取三位数字num百位上的数字

            hd =        num/100         ;

            //获取三位数字num十位上的数字

            td =        num/10%10         ;

            //获取三位数字num个位上的数字

            sd =           num%100%10      ;

            //水仙花数的条件是什么?

            if(     num==hd*hd*hd+td*td*td+sd*sd*sd                 ) 

            {

                printf("水仙花数字:%d\n", num);    

            }

        }

        return 0;    

    }