是谁告诉你i最大只能到k的并没有任何代码限制i不能大于k呀for里写i<=k,只是一个循环条件,当i>k时跳出了循环那么既然循环能跳出来,最终i肯定比k大了后面这个判断只不过是用来判断到底是循环正常结束了还是break出来的而已
2的平方根是1.4,但是k是int类型的,只会取到1这个整数,也就是说i在循环时赋值2,就已经大于k了,所以会进入下面的判断