为了账号安全,请及时绑定邮箱和手机立即绑定

为何限制了num范围后还会有范围外的数

之前的程序都对

最后的水仙花数条件句  if(num ==hd*hd*hd+td*td*td+sd*sd*sd) 若把“==”换成“=”运行结果为什么是

水仙花数字:1
水仙花数字:8
水仙花数字:729
水仙花数字:370
水仙花数字:371
水仙花数字:378
水仙花数字:1099

for循环不是已经限制了num范围了吗?为什么还会有其它数

正在回答

3 回答

如果你把==换成=号的话,那么在循环到378时,这时的num=378下一次循环为379,379分别拆开3次方之后相加就是1099也就是本次循环之后就跳出循环了

0 回复 有任何疑惑可以回复我~

看不明白计算机怎么算的

0 回复 有任何疑惑可以回复我~

根据你这样提醒我好像明白了,第一次程序从num=100开始时if句计算后的值 1 被赋值给num了,结果num又从1开始递加循环而不是100,之后每次计算出3位数的3次方和都被赋值给num,没有实现 num++ 所以会出现这样结果

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

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

进入课程

为何限制了num范围后还会有范围外的数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信