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-数组实例学生管理系统的更多相关文章

  1. Java实现功能简单的学生管理系统(附带源代码)

    这几天Java学了点新的知识,打算要用这些知识做一个比较简单的管理系统,实战一下子,代码中的功能简洁,可能不多,但是作为一个练手来了解一个项目是怎么样一点一点思考的还是不错的 一.代码中要实现的功能 ...

  2. 使用Java MVC模式设计一个学生管理系统

    最近在做web实验,要求是用jsp+servlet+mysql实现一个学生管理系统,完成对数据库的增删改查. 效果图:   代码: package dao; import java.util.List ...

  3. Java基础之 数组详解

    前言:Java内功心法之数组详解,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 数组概念 同一种类型数据的集合.其实数组就是一个容器. 数组 ...

  4. java基础(十) 数组类型

    1. 数组类简介   在java中,数组也是一种引用类型,即是一种类. 我们来看一个例子,理解一下数组类: public static void main(String[] args) { Class ...

  5. 【JAVA基础】数组练习案例一

    /* * * 输入5个学生成绩 * 计算出每个成绩与最高分的差距 * 根据差距分配等级 * * */ import java.util.Scanner; public class ArrayTask ...

  6. Java基础-反转数组

    /** java基础,如何将一个数组反转,思考方法采用使用临时变量的情况下,将第一个元素与第二个元素进行反转,需要定义两个索引,一个记录数组的第一个元素与最后一个元素,将其两两交换* */public ...

  7. java基础09 数组的使用

    /** * 求数组中的最大值 */ @Test public void test14(){ //定义一个数组 参赛的选手 int [] nums={50,20,30,80,100,90}; //定义一 ...

  8. 【java基础 15】java代码中“==”和equals的区别

    导读:昨夜闲来无事,和贾姑娘聊了聊java基础,然后就说到了这个"=="和equals的问题,我俩都是以前了解过,也常用这个,但是,昨天说到的时候,又乱了,什么比较地址值,什么判断 ...

  9. java 基础概念 -- 数组与内存控制

    问题1: Java在声明数组的过程中,是怎样分配内存的? 在栈内存中 建一个数组变量,再在堆内存中 建一个 数组对象.至于详细的内存分配细节,还得看 该初始化是 数组动态初始化 还是 数组静态初始化. ...

随机推荐

  1. CodeForces 785D Anton and School - 2 (组合数学)

    题意:有一个只有’(‘和’)’的串,可以随意的删除随意多个位置的符号,现在问能构成((((((…((()))))….))))))这种对称的情况有多少种,保证中间对称,左边为’(‘右边为’)’. 析:通 ...

  2. 【AutoResetEvent】

    AutoResetEvent用于线程间的同步 Test.cs代码: class Test { //构造函数,用一个指示是否将初始状态设置为终止的布尔值初始化该类的新实例. //false:无信号,子线 ...

  3. CSS预处理器(SASS和LESS)

    Sass框架应用Sass简介 Sass又名SCSS,是CSS预处理器之一,它能让你更好更轻松的工作.Sass官网是这样描述Sass的:**Sass是一门高于CSS的元语言,能用来清晰的.结构化地描述文 ...

  4. docker安装oracle

    最近工作上面遇到一个性能相关的问题,大体描述一下: 批量任务执行的过程中导致数据库sql执行时间过长,查看之后是由于批量任务占满数据库连接池导致的,至于为什么批量任务会不受系统控制导致连接池占满就不说 ...

  5. Python3的简单的函数调用

    python3的几种传参方法(初学者): 例1: def func(x,*argv): print(x) print(argv) func('alex','wt','hjc','lao liu') 输 ...

  6. CHNS类

    NS类集合介绍 1.常用部分 NSDictionary NSString NSArray 数组 NSTimer 定时器 NSRange 范围 NSNotification 2.网络相关 NSURLCo ...

  7. 【转】C# 中的委托和事件(详解)

    源地址:http://www.cnblogs.com/SkySoot/archive/2012/04/05/2433639.html

  8. P1114 “非常男女”计划

    题意:给你一个01串,求满足0和1总数相等的最大字串   $n\ \le\ 10^5$ 1.$O(n^3)$枚举起点终点,统计判断是否成立 2.$O(n^2)$先$O(n)$时间计算01个数的前缀和, ...

  9. luogu4345 [SHOI2015]超能粒子炮·改(组合数/Lucas定理)

    link 输入\(n,k\),求\(\sum_{i=0}^k{n\choose i}\)对2333取模,10万组询问,n,k<=1e18 注意到一个2333这个数字很小并且还是质数这一良好性质, ...

  10. Python利用百度地图api批量获取地址经纬度

    1.pip安装xlrd,xlwt,requests模块. 2.在工程目录处放置地点Excel文件. python2.7.13代码: #coding:utf-8 import xlrd import x ...