创建[size=10.5000pt]人 | 赵岩 |
问题标题 | 打印1-100之间的偶数和,输出结果。 |
问题分类 | 通过javac命令编译不会报错,打印的最终结果不正确。 |
一级话题 | 最终的打印结果是 0 2 0 4 0 6 0 8 ... 100 |
问题补充 | [size=12.0000pt] |
附件 | public class Test { public static void main(String[] args) { // for循环产生1-100之间的数字 for (int i = 1; i <= 100; i++) { // 定义求和变量 int sum = 0; // 判断i的值是否是偶数 if (i % 2 == 0) { // 是偶数, 累加到sum sum += i; } System.out.println(sum); // 2550 } } } |
问题答案 | 问题分析: 求和应该在for循环外面初始化一个int类型的变量sum,记录求和的结果,并在for循环结束后打印最后的结果。学员的打印出现了多行,肯定是打印语句放在了for循环中,而且结果没有累加,应该是sum变量定义的位置错误。 |
问题解决方法: 报错行修改为: 在for循环外面定义变量int sum = 0;去掉循环里边的变量; 打印输出语句必须放到for循环外边 |
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |