运行正常,输出错误

来源:4-9 循环结构之for循环(二)

东西不东西

2018-05-26 17:17

拜托拜托,哪位大神帮忙看一下哪出错啦

#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;    

}


写回答 关注

2回答

  • qq_Apathetic_1
    2018-05-27 23:30:39

    百位应该是 hd=num/100;  不是num%100, 例如153%100是153除以100取余数 余数是53,你的代码不对,所以百位应该是hd=num/100;

  • 繁华明天依旧
    2018-05-26 21:52:03

     第12行好像应该是这样td =num%100/10;

    有用的话望采纳,祝楼主学习愉快!

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926207 学习 · 20797 问题

查看课程

相似问题