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

为什么这个代码最后只出现407

#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%10)/10;

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

        sd =num%10;

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

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

        {

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

        }

    }

    return 0;    

}


提问者:与淡茶 2018-07-30 23:40

个回答

  • 修裾欲溯空
    2018-07-31 08:16:23
    已采纳

    如果我没猜错,你的td算错了

  • 慕少6369282
    2018-07-31 17:34:16

    加括号就先执行括号里面的


  • 慕少6369282
    2018-07-31 10:48:42

    这样td =num/10%10