金熙川 发表于 2020-7-17 23:25:55

水仙花数的程序怎么出错了呀,大家帮我看看吧,谢谢

#include<stdio.h>

int main()
{
        int a,b,c,n;
        printf("Water flower numbers are:");
       
        for (n = 100; n < 1000; n++)
        {
                a = n % 100;
                b = (n - 100 * a) / 10;
                c = n % 10;
                if (n == a*a*a + b*b*b + c*c*c)
                        printf("%d ",n);
        }
       
        return 0;
}
这个程序运行后是“Water flower numbers are:   ”这个结果,为什么没有数字啊 ,请帮我解答一下,谢谢了

永恒的蓝色梦想 发表于 2020-7-17 23:42:38

应该是:#include<stdio.h>

int main(){
    int a, b, c, n;
    printf("Water flower numbers are:");

    for (n = 100; n < 1000; n++) {
      a = n / 100;
      b = n / 10 % 10;
      c = n % 10;
      if (n == a * a * a + b * b * b + c * c * c) {
            printf("%d ", n);
      }
    }

    return 0;
}

巴巴鲁 发表于 2020-7-18 08:53:17

改成a=n/100,实现求得n的百位数

金熙川 发表于 2020-7-18 13:36:25

巴巴鲁 发表于 2020-7-18 08:53
改成a=n/100,实现求得n的百位数

哦 对对对,谢谢

巴巴鲁 发表于 2020-7-18 16:27:47

我也涨知识了,十位上的数还能这样表示{:10_256:}

金熙川 发表于 2020-7-18 20:47:13

巴巴鲁 发表于 2020-7-18 16:27
我也涨知识了,十位上的数还能这样表示

嗯啊,这只能表示三位数哦
页: [1]
查看完整版本: 水仙花数的程序怎么出错了呀,大家帮我看看吧,谢谢