为什么这样输出结果是30?
public class LoopDemo {
public static void main(String[] args) {
int n=1; //定义整型变量n作为循环变量,并初始化
int sum=0; //定义整型变量sum存放和,并初始化
while(n<=5) {
n=n*n;
sum=sum+n;
n++;
}//使用while循环求1到5的平方和
System.out.println(sum); //输出平方和
}
}
2
收起
正在回答 回答被采纳积分+1
14回答
慕码人8061349
2019-05-07 22:29:47
因为你定义了 n = n * n,所以 n 又被重新赋值了一遍,当 n=1 的时候,sum = 1,n++ 为 2,后面在循环的时候执行 n = n * n,则此时n=4了,sum = 1 + 4=5, n++ 为 5,然后再执行的时候 n = n * n,此时 n = 25了,sum = 25 + 5 = 30;正好25 > 5循环结束,那么你最后求得值为 30;
Determine001
2019-04-13 10:59:57
你第二次进入循环结束 n就已经是5了 下次直接加了 5X5 所以就是 1+4+25 = 30
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星