Java基础15-数组实例学生管理系统
import java.util.Scanner;
public class Student{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("请输入学生的人数");
int studentsNum=in.nextInt();
System.out.println("请输入课程数目");
int coursesNum=in.nextInt();
//声明数组存储课程
String[] courses=new String[coursesNum];
//声明数组存储姓名
String[] names=new String[studentsNum];
//声明二维数组存储特定成绩
double[][] scores=new double[studentsNum][coursesNum];
//声明数组存储总分
double[] sum=new double[studentsNum];
//声明数组存储平均分
double[] avg=new double[studentsNum];
//声明数组存储一行
String[] str=new String[studentsNum]; //循环给课程数组赋值
for(int i=0;i<courses.length;i++){
System.out.println("请输入第"+(i+1)+"门课程是什么");
courses[i]=in.next();
} //循环给姓名数组和成绩赋值
for(int i=0;i<names.length;i++){
System.out.println("请输入第"+(i+1)+"个学生的姓名:");
names[i]=in.next();
double s=0;
String str1="";
for(int j=0;j<courses.length;j++){
System.out.println("请输入"+names[i]+courses[j]+"的成绩:");
scores[i][j]=in.nextDouble();
s=s+scores[i][j];
str1=str1+scores[i][j]+"\t";
}
sum[i]=s;
avg[i]=s/coursesNum;
str[i]=names[i]+"\t"+str1+sum[i]+"\t"+avg[i]+"\t";
} //按照表格形式输出
System.out.print("学生\t");
for(int i=0;i<courses.length;i++){
System.out.print(courses[i]+"\t");
}
System.out.print("总分\t平均分\t排行榜\t");
System.out.println(); for(int i=0;i<sum.length-1;i++){
for(int j=0;j<sum.length-1;j++){
if(sum[j]<sum[j+1]){
double temp=sum[j];//叫总分高的排在前面
sum[j]=sum[j+1];
sum[j+1]=temp; String temp2=str[j];//将整行交换
str[j]=str[j+1];
str[j+1]=temp2;
} }
} for(int i=0;i<names.length;i++){
//System.out.print(names[i]+"\t");
//for(int j=0;j<courses.length;j++){
//System.out.print(scores[i][j]+"\t");
//}
//System.out.print(sum[i]+"\t"+avg[i]+"\t");
System.out.print(str[i]);
System.out.print("第"+(i+1)+"名");
System.out.println();
}
}
}
Java基础15-数组实例学生管理系统的更多相关文章
- Java实现功能简单的学生管理系统(附带源代码)
这几天Java学了点新的知识,打算要用这些知识做一个比较简单的管理系统,实战一下子,代码中的功能简洁,可能不多,但是作为一个练手来了解一个项目是怎么样一点一点思考的还是不错的 一.代码中要实现的功能 ...
- 使用Java MVC模式设计一个学生管理系统
最近在做web实验,要求是用jsp+servlet+mysql实现一个学生管理系统,完成对数据库的增删改查. 效果图: 代码: package dao; import java.util.List ...
- Java基础之 数组详解
前言:Java内功心法之数组详解,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 数组概念 同一种类型数据的集合.其实数组就是一个容器. 数组 ...
- java基础(十) 数组类型
1. 数组类简介 在java中,数组也是一种引用类型,即是一种类. 我们来看一个例子,理解一下数组类: public static void main(String[] args) { Class ...
- 【JAVA基础】数组练习案例一
/* * * 输入5个学生成绩 * 计算出每个成绩与最高分的差距 * 根据差距分配等级 * * */ import java.util.Scanner; public class ArrayTask ...
- Java基础-反转数组
/** java基础,如何将一个数组反转,思考方法采用使用临时变量的情况下,将第一个元素与第二个元素进行反转,需要定义两个索引,一个记录数组的第一个元素与最后一个元素,将其两两交换* */public ...
- java基础09 数组的使用
/** * 求数组中的最大值 */ @Test public void test14(){ //定义一个数组 参赛的选手 int [] nums={50,20,30,80,100,90}; //定义一 ...
- 【java基础 15】java代码中“==”和equals的区别
导读:昨夜闲来无事,和贾姑娘聊了聊java基础,然后就说到了这个"=="和equals的问题,我俩都是以前了解过,也常用这个,但是,昨天说到的时候,又乱了,什么比较地址值,什么判断 ...
- java 基础概念 -- 数组与内存控制
问题1: Java在声明数组的过程中,是怎样分配内存的? 在栈内存中 建一个数组变量,再在堆内存中 建一个 数组对象.至于详细的内存分配细节,还得看 该初始化是 数组动态初始化 还是 数组静态初始化. ...
随机推荐
- arp绑定
Windows xp 在CMD中执行 arp -s ip mac 例如 arp -s 192.168.2.101 40-5f-c2-c1-97-fb Windwos 7 在 Windows 7/Vis ...
- Spring JDBCTemplate配置使用
一.开发环境 Windows 10 IntelliJ IDEA 2016.1 旗舰版 JDK1.8 二.项目和数据库结构 项目结构: 数据库(MySQL 5.5.39): /* Navicat MyS ...
- java8之lambda表达式&方法引用(一)
本文将简单的介绍一下Lambda表达式和方法引用,这也是Java8的重要更新,Lambda表达式和方法引用最主要的功能是为流(专门负责迭代数据的集合)服务. 什么是lambda表达式 可以把lambd ...
- git常用命令(转)
git常用命令: git init //初始化本地git环境 git clone XXX//克隆一份代码到本地仓库 git pull //把远程库的代码更新到工作台 git pull --rebase ...
- 大众点评CAT开源监控系统剖析
参考文档: 大众点评的实时监控系统分析(一) CAT_source_analyze 透过CAT,来看分布式实时监控系统的设计与实现 深度剖析开源分布式监控CAT [分布式监控CAT] Client端源 ...
- findControl 可以获取前台页面的控件
findControl 可以获取前台页面的控件
- [51nod1188]最大公约数之和 V2(筛法)
题面 传送门 题解 口胡的整除分块单次询问\(O(\sqrt{n})\)的做法居然\(T\)了?那还是好好看正解吧-- 首先我们枚举\(j\),求对于每个\(j\)有所有\(i<j\)的\(\g ...
- Linux系统磁盘
所有有系统都一样,都是一种软件被安装于某个硬件之上,这个硬件无外非是一种存储设备,通常操作系统都是安装在磁盘中,所以Linux系统也是一样,都是安装在磁盘中,但是它与Windows系统不一样,因为Li ...
- hadoop HDFS文件系统的特征
hadoop HDFS文件系统的特征 存储极大数目的信息(terabytes or petabytes),将数据保存到大量的节点当中.支持很大单个文件. 提供数据的高可靠性,单个或者多个节点不工作,对 ...
- P1891 疯狂LCM
\(\color{#0066ff}{ 题目描述 }\) 众所周知,czmppppp是数学大神犇.一天,他给众蒟蒻们出了一道数论题,蒟蒻们都惊呆了... 给定正整数N,求LCM(1,N)+LCM(2,N ...