为什么我这个三位数的限定方法不行呀??求教各位大佬

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

慕少2890056

2018-10-01 17:25

#include <stdio.h>
int main()
{

    int num, sd, td, hd;
    for(num=100 ;
99<num && num <1000;num++)
    {
        hd = num/100;
        td = num /10%10;
        sd = num%10;
        if( num == hd*hd*hd+td*td*td+sd*sd*sd)
        {
            printf("水仙花数字:%d\n", num);   
        }
    }
    return 0;   
}

写回答 关注

4回答

  • qq_梁小胖咂_cGIMSZ
    2018-10-10 17:03:42

    hd=num/100     td=num%100/10        sd=num%100%10

  • 慕仔0455005
    2018-10-02 15:49:40

    是&关系没有错,但是你的td符号有问题

  • 慕仔0455005
    2018-10-02 15:46:34

    #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+td*td*td+sd*sd*sd  ) 

            {

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

            }

        }

        return 0;    

    }


  • lzj1136667251
    2018-10-01 20:30:02

    我感觉没错啊,是正确的


    lzj113...

    只是这个章节他的标答是那个,你这个也可以

    2018-10-01 20:31:10

    共 1 条回复 >

C语言入门

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

924578 学习 · 20763 问题

查看课程

相似问题