6-3 学生类 (20分)
有一个学生类的结构如下:
/*你的代码被嵌在这里*/
class Student {
private int no;
private String name;
private int score;
public Student(int _no, String _name, int _score) {
no = _no;
name = _name;
score = _score;
}
public int getNo() {return no;}
public String getName() {return name;}
public int getScore() {return score;}
public void print(){
System.out.println(no + " "+name+" "+score);
}
}
请构造main函数完成如下功能: 从键盘中读入三个学生的信息,比较他们的成绩,按照成绩由高到低排列输出
输入描述:
三个学生的学号、姓名、成绩
输出描述:
由高到低排列输出的三个学生信息
输入样例:
在这里给出一组输入。例如:
1 wang 89
2 liu 78
3 ma 90
输出样例:
在这里给出相应的输出。例如:
3 ma 90
1 wang 89
2 liu 78
解决如下:
import java.util.Scanner;
public class Main {
public static void main(String []args)
{
Scanner in = new Scanner(System.in);
Student a = new Student(in.nextInt(),in.next(),in.nextInt());
Student b = new Student(in.nextInt(),in.next(),in.nextInt());
Student c = new Student(in.nextInt(),in.next(),in.nextInt());
if(a.getScore()>b.getScore()&&a.getScore()>c.getScore())
if(b.getScore()>c.getScore())
{a.print();b.print();c.print();}
else
{a.print();c.print();b.print();}
if(b.getScore()>a.getScore()&&b.getScore()>c.getScore())
if(a.getScore()>c.getScore())
{b.print();a.print();c.print();}
else
{b.print();c.print();a.print();}
if(c.getScore()>b.getScore()&&c.getScore()>a.getScore())
if(b.getScore()>a.getScore())
{c.print();b.print();a.print();}
else
{c.print();a.print();b.print();}
}
}