debrissss 2020-10-11 09:55 采纳率: 100%
浏览 82
已采纳

用c++程序求水仙花数,if判断句不起作用,直接把100到999全部输出了,这是怎么回事?

#include

using namespace std;

int main()
{int sum;
for(int a=1;a<10;a++)
for(int b=0;b<10;b++)
for(int c=0;c<10;c++)
{int sum=a*100+b*10+c;
if(sum==(a*a*a+b*b*b+c*c*c));
printf("%d\n",sum);}
return 0;
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-10-11 10:07
    关注

    if(sum==(a*a*a+b*b*b+c*c*c));
    这里多了一个分号
    应该是
    if(sum==(a*a*a+b*b*b+c*c*c))
    修改后程序可以输出
    153
    370
    371
    407

    问题解决的话,请点下采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?