1.7编程If这段代码打不理解

1.7编程If这段代码打不理解

package com.imooc.array;


import java.util.Scanner;


public class BianCheng3 {


public static void main(String[] args) {

//定义一个三行两列的整型二维数组intArray

int[] intArray[]=new int[3][2];

       //从键盘输入学生成绩,要求输入顺序与效果图一致

int[] num[]={{78,98},{95,100},{75,80}};

System.out.println("请输入第1个学生的语文成绩:"+num[0][0]);

System.out.println("请输入第1个学生的数学成绩:"+num[0][1]);

System.out.println("请输入第2个学生的语文成绩:"+num[1][0]);

System.out.println("请输入第2个学生的数学成绩:"+num[1][1]);

System.out.println("请输入第3个学生的语文成绩:"+num[2][0]);

System.out.println("请输入第3个学生的数学成绩:"+num[2][1]);

       

Scanner sc = 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)+"个学生的语文成绩:");   


        }else{


            System.out.println("请输入第"+(i+1)+"个学生的数学成绩:");


        }


        intArray[i][j]=sc.nextInt();   


    }


}

请输入第1个学生的语文成绩:78

请输入第1个学生的数学成绩:98

请输入第2个学生的语文成绩:95

请输入第2个学生的数学成绩:100

请输入第3个学生的语文成绩:75

请输入第3个学生的数学成绩:80

请输入第1个学生的语文成绩:

78  老师这个效果图不理解


正在回答

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

4回答

那你if 不是在循环里面的吗,所以并不是只输入一个人的成绩呀。你自己运行一下就全知道了,编程是写出来的,是代码敲出来的,一遍遍的运行,调bug出来的。这个学科与语文,数学还不一样,不是理论知识,要改掉学院派的风格,这里要动手实操。另外你这里的代码是没有必要的

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

好帮手慕雪 2019-08-13 18:48:00

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

然后算出语文,数学的总成绩。再继续算出平均成绩。另外,同学提的问题,自己先读一遍再发,那么多的错误字,老师都是靠猜,来回复你问题的。

  • 提问者 慕圣6116785 #1
    不是这个意思,不是才只是输出第一个学生的语文成绩而已;题目要求不是要请输入第1个学生的语文成绩:78 请输入第1个学生的数学成绩:98 请输入第2个学生的语文成绩:95 请输入第2个学生的数学成绩:100 请输入第3个学生的语文成绩:75 请输入第3个学生的数学成绩:80;但是If这段代码不是只是输出一句“第一个学生的语文成绩”
    2019-08-13 18:53:36
好帮手慕雪 2019-08-13 18:08:11

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

红框里的是输出的内容,蓝框中是用户输入的内容

好帮手慕雪 2019-08-13 17:57:40

intArray[i][j]中的i表示行,j表示列。行其实也就是某个人,j就是这个人的某科成绩。例如0列表示语文,那么1列表示数学。这两列也是可以互换的。0列表示数学,1列表示语文。你代码中的if就是在判断应该是给语文赋值还是数据赋值呢。祝:学习愉快

  • 提问者 慕圣6116785 #1
    请输入第1个学生的语文成绩:78 请输入第1个学生的数学成绩:98 请输入第2个学生的语文成绩:95 请输入第2个学生的数学成绩:100 请输入第3个学生的语文成绩:75 请输入第3个学生的数学成绩:80输出结果不应该是这样吗
    2019-08-13 18:00:30
  • 提问者 慕圣6116785 #2
    Scanner sc = 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)+"个学生的语文成绩:"); }else{ System.out.println("请输入第"+(i+1)+"个学生的数学成绩:"); } intArray[i][j]=sc.nextInt(); 老师我意思是说这段代码输出内容是”请输入第1个学生的语文成绩:“这样子算符合题目要求吗、不理解
    2019-08-13 18:28:29
  • 好帮手慕雪 回复 提问者 慕圣6116785 #3
    嗯嗯,可以的,符合题目要求
    2019-08-13 18:31:32
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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