为什么同样的代码,用网页的编译器就报错,用eclipse就可以正确输出,是我的代码有问题吗?

为什么同样的代码,用网页的编译器就报错,用eclipse就可以正确输出,是我的代码有问题吗?

   // 定义一个三行两列的整型二维数组intArray
		int[][] intArray = new int[3][2];
		//定义语文总成绩变量sum1,平均成绩average1,并初始化
		int sum1 = 0, sum2 = 0;
		//定义数学总成绩变量sum2,平均成绩average2,并初始化
		int average1 = 0, average2 = 0;
		
		Scanner scanner = new Scanner(System.in);

		// 从键盘输入学生成绩,要求输入顺序与效果图一致
		for (int i = 0; i < intArray.length; i++) {
			for (int j = 0; j < intArray[i].length; j++) {
				if (j == 0) {
					System.out.println("请输入第" + (i + 1) + "个学生的语文成绩:");
					intArray[i][j] = scanner.nextInt();
				} else {
					System.out.println("请输入第" + (i + 1) + "个学生的数学成绩:");
					intArray[i][j] = scanner.nextInt();
				}
			}
		}

		// 求语文的总成绩和平均分
		for (int i = 0, j = 0; i < intArray.length; i++) {
			sum1 += intArray[i][j];
			average1 = sum1 / (i + 1);
		}
		System.out.println("语文的总成绩为:" + sum1);
		System.out.println("语文的平均分为:" + average1);

		// 求数学的总成绩和平均分
		for (int i = 0, j = 1; i < intArray.length; i++) {
			sum2 += intArray[i][j];
			average2 = sum2 / (i + 1);
		}
		System.out.println("数学的总成绩为:" + sum2);
		System.out.println("数学的平均分为:" + average2);

http://img1.sycdn.imooc.com//climg/5acca21e0001248203710546.jpg

http://img1.sycdn.imooc.com//climg/5acca2670001136213210968.jpg

标题写不下了,我还有个问题想请教一下:

我如果还想输出“小于0和大于100就显示超过范围,请重新输出”该怎么做?我试了几种方法貌似都不能成功

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

http://img1.sycdn.imooc.com//climg/5acca31900012b3b09510288.jpg

关于数据输入时不符合提示后重新输入,可以参考思路:

定义一个整型变量n,将从键盘接收的数据赋值给n,然后加一个判断,如果n为“小于0和大于100”则给出错误提示,并将i的值减1,为下次重新输入数据做准备,并调用continue语句结束当前循环继续下一次循环;在if语句外,也就是n满足条件,再存入数组。

同学可以试一下~~~加油!

  • Mitsushima_Hikari 提问者 #1
    谢谢您的解答,因为我是直接复制eclipse代码的,网页编译器没有那么智能,确实是因为没有导包的问题,关于数据输入时不符合提示后重新输入的问题,我也会尝试的,谢谢!
    2018-04-10 20:30:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师