这段代码试图判断一个整数各位数字之和是否等于各位数字之积。但第二个循环的逻辑有错误。 - 第一个循环正确计算了各位数字之和,保存在 number1 中。 - 第二个循环中,你先把 B 取模 10 得到最后一位数字,然后立即用这个一位数去乘 number2,接着又把 B 除以 10。但此时 B 已经被取模操作改变了,不再是原来的数字,所以循环无法正确遍历所有位。 提示: - 在第二个循环中,你应该先保存当前位的数字,再更新 B 的值,而不是直接用 B 去取模并同时改变 B。 - 注意 number2 的初始值是 1,但乘积结果可能为 0,需要思考当数字中有 0 时的情况。