今天练习的时候遇到一个题目,题目需求是这样的:

需求说明:

根据3个班各5名学生某门课程的成绩,正确使用二维数组计算如图所示3个班各自的总成绩

分析:

要实现这个功能需要存储两个信息:

  • 一个是班级信息,一个是学生成绩信息,对于入门选手,首先肯定会想到用二维数组,二维数组的实质其实就是一个一维数组,只不过数组里面存的是其他数组的首地址,通过引用指向其他数组。
  • 需要注意的是,学生成绩需要用户手动输入,这需要使用到Java的Scanner类,通过该类的对象调用nextInt()(接收整型数据),next()(接收字符串类型),具体用法如下:
import java.util.Scanner;//导入类Scanner sc=new Scanner(System.in);//实例化Scanner对象int studentScore=sc.nextInt();//接收用户输入的Int型数据

只需要用到两个for循环进行嵌套,用户依次输入数据存入数组;

下面是具体的代码:

import java.util.Scanner;
public class Test08 {public static void main(String[] args) {int[][] scores=new int[3][5];Scanner sc=new Scanner(System.in);int sum=0;for (int i = 0; i <scores.length ; i++) {System.out.println("********第"+(i+1)+"个班********");for(int j=0;j<scores[i].length;j++){System.out.print("请输入第"+(j+1)+"个同学的成绩:");int studentScore=sc.nextInt();scores[i][j]=studentScore;}}System.out.println("********成绩统计********");for (int i = 0; i <scores.length ; i++) {for(int j=0;j<scores[i].length;j++){sum+=scores[i][j];}System.out.print((i+1)+"班总成绩:"+sum);System.out.println();sum=0;}}
}

下面是运行结果截图:

********第1个班********
请输入第1个同学的成绩:50
请输入第2个同学的成绩:60
请输入第3个同学的成绩:70
请输入第4个同学的成绩:80
请输入第5个同学的成绩:90
********第2个班********
请输入第1个同学的成绩:10
请输入第2个同学的成绩:20
请输入第3个同学的成绩:30
请输入第4个同学的成绩:40
请输入第5个同学的成绩:50
********第3个班********
请输入第1个同学的成绩:20
请输入第2个同学的成绩:30
请输入第3个同学的成绩:40
请输入第4个同学的成绩:50
请输入第5个同学的成绩:60
********成绩统计********
1班总成绩:350
2班总成绩:150
3班总成绩:200
Process finished with exit code 0
​

本人小白一个,尚在努力学习中,想交流学习心得、看更多每日学习小文章,可关注我的微信公众号【Java菜鸟的进阶之路】一起交流成长!

文章链接:

Java中关于二维数组的理解与使用​mp.weixin.qq.com

java 数组存入数据库_Java中关于二维数组的理解与使用相关推荐

  1. java不等长二维数组_Java中关于二维数组的理解与使用

    今天练习的时候遇到一个题目,题目需求是这样的: 需求说明: 根据3个班各5名学生某门课程的成绩,正确使用二维数组计算如图所示3个班各自的总成绩 分析: 要实现这个功能需要存储两个信息: 一个是班级信息 ...

  2. java多维数组的指针_Java基础之二维数组

    二维数组概念 二维数组的概念 对于二维数组的理解,我们可以看成一位数组arrary1有作为另一个一维数组arrary2的元素存在.从底层机制来看没有多维数组概念 2二维数组的使用 二维数组的声明与初始 ...

  3. python遍历二维数组_在Python中遍历二维数组?

    你需要告诉我们一些事情:dataset = datas.values 它可能是一个二维数组,因为它来自一个csv负载.但是什么形状和数据类型?甚至可能是阵列的一个样本. 这是函数中的data参数吗? ...

  4. python定义二维数组_在python中定义二维数组

    原博文 2016-08-30 19:16 − 发表于 http://liamchzh.0fees.net/?p=234&i=1 一次偶然的机会,发现python中list非常有意思. 先看一段 ...

  5. c语言字符串二维数组的动态分配应,C语言中动态分配二维数组复习过程.doc

    C语言中动态分配二维数组复习过程.doc C语言中动态分配二维数组在C中动态分配内存的,对于单个变量,字符串,一维数组等,都是很容易的.C中动态分配二维数组的方法,很少有C语言书中描述,我查找了有的C ...

  6. 如何在C/C++中动态分配二维数组

    如何在C/C++中动态分配二维数组 在C/C++中动态分配二维数组可以先申请一维的指针数组,然后该数组中的每个指针再申请数组,这样就相当于二维数组了,但是这种方法会导致每行可能不相邻,从而访问效率比较 ...

  7. Java中的二维数组和递归

    文章目录 二维数组 数组初始化以及匿名数组 数组拷贝 Java中数组作为参数传递 递归 二维数组 前面已经学习过数组了,了解到数组就是一种容器,用来存储同一类型值的集合,通过下标 / 索引可以访问数组 ...

  8. 二维数组在c语言中的作用,C语言中的二维数组

    1.二维数组的定义和引用 一. 数据类型 数组名[常量表达式1][常量表达式2]; (1)假如有个二维数组array[n][m],则行下标的取值范围0~n-1 (2)列下标的取值范围0~m-1 (3) ...

  9. c语言用二维数组打印空心菱形,java杨辉三角和空心菱形(二维数组篇)

    一.杨辉三角 import java.util.Scanner; //导入包 public class Test7 { public static void main(String[]args){ S ...

最新文章

  1. SmartRules让MindManager的交互图变得更加智能
  2. centos oracle命令,CentOS7命令行方式搭建Oracle11gR2
  3. java并发进程共享变量_JAVA并发编程学习:共享对象
  4. 这篇 CPU Cache,估计要消化一下
  5. 部署LAMP论坛平台(Linux,Apache,MySQL,PHP)
  6. @FeignClient 接口调用
  7. render在python中的含义_python面试中常见易混淆概念
  8. Leetcode每日一题:142.linked-list-cycle-ii(环形链表Ⅱ)
  9. 2022网络安全技术自学路线图及职业选择方向
  10. SIM7600CE-CNSE 4G模组发送英文短信
  11. 浅谈AWD攻防赛的生存攻略
  12. 你对区块链的理解还停留在炒币上吗
  13. Zabbix 3.0 版本企业微信群机器人报警
  14. 收藏 取消收藏html,一键解除网页限制,浏览器收藏夹书签小工具
  15. photoshop 插件_使用长阴影生成器创建长阴影[Photoshop插件]
  16. [OS] ESXi安装和配置
  17. nmn是个什么东西,一篇文章让您客观了解nmn对身体有什么好处
  18. 【应用回归分析】CH3 回归参数的估计1——最小二乘估计
  19. pgpool-II 4.3 中文手册 - 入门教程
  20. 利用django+pycharm开发小型博客项目!!!

热门文章

  1. android socket 长连接_TCP/IP,http,socket,长连接,短连接
  2. SpringCloud入门简述
  3. Linux SD卡驱动开发(二) —— SD 卡驱动分析HOST篇
  4. 使用css优雅解决文字两端对齐的方式之一
  5. 前端学习(3350):数组方法的运用和数值join
  6. React开发(160):onref使用
  7. React开发(149):ant design控制是否必填
  8. [html] 在两个iframe之间传递参数的方法有哪些?
  9. [html] 说说video标签中预加载视频用到的属性是什么?
  10. [html] DOM和BOM有什么区别?