错哪了 结果都一样

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

qq_慕雪0203159

2020-07-12 08:43

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

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

        sd = num%10;

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

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

        {

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

        }

    }

    return 0;    

}


写回答 关注

3回答

  • weixin_慕少9328968
    2020-07-12 17:13:50

    if(num==hd*hd*hd+td*td*td+sd*sd*sd(改成这个应该可以了)

  • weixin_慕少9328968
    2020-07-12 17:10:36

    它所认可的就那两种情况,其余的无论对错都判断为错误

  • weixin_慕少9328968
    2020-07-12 17:09:13

    你这个其实没有错,逻辑上是没有问题的,只不过这个是题目它不仅检查结果还检查代码所以并没有考虑全面

C语言入门

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

928119 学习 · 21543 问题

查看课程

相似问题