java学生类
2015-11-01 12:16
483 查看
上星期四实验课老师让设计一个学生类,要求输入若干个学生信息,包括姓名,学号,科目成绩,要求进行排序,输出总分,姓名,学号,名次,总分一样的并列,我现在写了一个最简单的,这是我第一次上传,内容十分简单,上传纯属纪念,记住成长的脚步,希望多多提意见,以此进步。
import java.util.Scanner;
public class Score {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Student[] stu = new Student[5];
for (int i=0; i<5; i++)
{
System.out.print("请输入姓名:");
String name = input.next();
System.out.print("请输入学号: ");
int number = input.nextInt();
System.out.print("请输入数学成绩: ");
double math = input.nextDouble();
System.out.print("请输入英语成绩: ");
double english = input.nextDouble();
System.out.print("请输入计算机成绩: ");
double computer = input.nextDouble();
stu[i] = new Student(name, number, math, english, computer);
}
stu[0].sort(stu);
stu[0].prin(stu);
}
}
class Student {
private String name;
private int number;
private double math;
private double english;
private double computer;
private double sum;
public Student(String name, int number, double math, double english, double computer) {
this.name = name;
this.number = number;
this.math = math;
this.english = english;
this.computer = computer;
this.sum = math + english + computer;
}
public void sort(Student[] st) {
for (int i=0; i<4; i++) {
for (int j=0; j<4-i; j++) {
if (st[j].sum < st[j+1].sum) {
Student temp;
temp = st[j];
st[j] = st[j+1];
st[j+1] = temp;
}
}
}
}
public void prin(Student[] st) {
System.out.println("成绩情况如下: ");
System.out.println("姓名 学号 总分 名次");
int count = 1;
for (int k=0; k<5; k++) {
System.out.println(st[k].name + " " + st[k].number +" " + st[k].sum + " " + count);
count++;
if (k < 4) {
if (st[k].sum == st[k+1].sum)
count--;
}
}
}
}
输入:gao1 201401 100 100 100
gao2 201402 100 89 100
gao3 201403 100 100 100
gao4 201404 100 80 90
gao5 201405 100 100 90
输出: 姓名 学号 总分 名次
gao1 201401 300 1
gao3 201403 300 1
gao5 201405 290 2
gao2 201402 289 3
gao4 201404 270 4
import java.util.Scanner;
public class Score {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Student[] stu = new Student[5];
for (int i=0; i<5; i++)
{
System.out.print("请输入姓名:");
String name = input.next();
System.out.print("请输入学号: ");
int number = input.nextInt();
System.out.print("请输入数学成绩: ");
double math = input.nextDouble();
System.out.print("请输入英语成绩: ");
double english = input.nextDouble();
System.out.print("请输入计算机成绩: ");
double computer = input.nextDouble();
stu[i] = new Student(name, number, math, english, computer);
}
stu[0].sort(stu);
stu[0].prin(stu);
}
}
class Student {
private String name;
private int number;
private double math;
private double english;
private double computer;
private double sum;
public Student(String name, int number, double math, double english, double computer) {
this.name = name;
this.number = number;
this.math = math;
this.english = english;
this.computer = computer;
this.sum = math + english + computer;
}
public void sort(Student[] st) {
for (int i=0; i<4; i++) {
for (int j=0; j<4-i; j++) {
if (st[j].sum < st[j+1].sum) {
Student temp;
temp = st[j];
st[j] = st[j+1];
st[j+1] = temp;
}
}
}
}
public void prin(Student[] st) {
System.out.println("成绩情况如下: ");
System.out.println("姓名 学号 总分 名次");
int count = 1;
for (int k=0; k<5; k++) {
System.out.println(st[k].name + " " + st[k].number +" " + st[k].sum + " " + count);
count++;
if (k < 4) {
if (st[k].sum == st[k+1].sum)
count--;
}
}
}
}
输入:gao1 201401 100 100 100
gao2 201402 100 89 100
gao3 201403 100 100 100
gao4 201404 100 80 90
gao5 201405 100 100 90
输出: 姓名 学号 总分 名次
gao1 201401 300 1
gao3 201403 300 1
gao5 201405 290 2
gao2 201402 289 3
gao4 201404 270 4
相关文章推荐
- JAVA基础3-程序结构与控制、函数与数组入门
- JAVA基础2-标识符、关键字、数据类型与运算符
- JAVA基础1-JAVA入门和JDK的安装与配置
- Spring Spring mvc mybatis集成
- 使用gradle编译和运行Java程序
- JAVA设计模式-2-创建型模式
- 出现junit 出错,找不到文件,可以这么解决。
- java.lang.String +concat(s1: String): String
- SpringBeans【Spring】
- Java序列化和反序列化
- spring事务控制【Spring】
- Springmvc异常处理【Springmvc】
- Springmvc-freemarker 【Springmvc】
- Java 中泛型
- Springmvc视图解析器(一)resolver解析器和view视图 【Springmvc】
- Java记录 -51- 栈和队列
- ConcurrentHashMap 浅层次总结
- jdk代理(一) 静态代理和动态代理使用
- Java 字符集与编码
- Java 基础知识 - 知识导图