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

这个余值我用这个怎么不行(他显示为没有输出153)

#include <stdio.h>

int main()

{

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

    int num, sd, td, hd;

    //循环所有三位数

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

    {

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

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

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

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

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

        sd =   num-hd*100-td*10              ;

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

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

        {

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

        }

    }

    return 0; 


提问者:emmmmmmok 2019-08-08 21:07

个回答

  • 小神0x00
    2019-08-08 21:13:17
    已采纳

    https://img1.mukewang.com/5d4c1fd50001525f08080547.jpg

    打印hd,你这个取值有问题。

  • 小神0x00
    2019-08-08 21:14:55

    https://img.mukewang.com/5d4c203e0001af6608020479.jpg

    没那么复杂的