6-10 奖学金资格审查系统

6-10 奖学金资格审查系统

分数 15

全屏浏览

切换布局

作者 大数据2021

单位 山东科技大学

由于奖学金评选工作需要,现需要设计一套系统对学生是否具有评选资格进行筛选,目前已给出一个学生类Student,其包含学号(String id)、综合测评成绩(double ca)两个私有属性,以及具有能够初始化学号和综合测评成绩两个参数的构造方法和判断是否具有参评奖学金资格的方法(boolean isReq()),需要您完成以下内容:

1、定义本科生类Undergraduate继承Student,并重写isReq()ca>=80时返回true,否则返回false;

2、定义研究生类Graduate继承Student,增加导师确认(boolean supervisor)属性,并重写isReq()ca>=85supervisortrue时返回true,否则返回false;

注意:除题目已给出的属性,所有类不得添加新的属性,但可以适当添加方法。

裁判测试程序样例:

 

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //通过键盘输入确定Student数组的长度 Student[] stu = new Student[Integer.parseInt(sc.nextLine())]; for (int i = 0; i < stu.length; i++) { //截取输入的字符 String[] str = sc.nextLine().split("\\s+"); //三个字符串表示为Graduate,否则为Undergraduate if (str.length > 2) { stu[i] = new Graduate(str[0], Double.parseDouble(str[1]), Boolean.parseBoolean(str[2])); } else { stu[i] = new Undergraduate(str[0], Double.parseDouble(str[1])); } } //循环输出结果 for (int i = 0; i < stu.length; i++) { if(stu[i].isReq()) System.out.println(stu[i].getId() + " pass" ); else System.out.println(stu[i].getId() + " fail" ); } sc.close(); } } class Student { private String id; private double ca; public Student(String id, double ca) { this.id = id; this.ca = ca; } public boolean isReq() { return false; } public String getId() { return id; } public double getCA() { return ca; } } /* 请在这里填写答案 */

输入样例:

7
001 56
002 80
003 81
004 12 false
005 80 false
006 85 false
007 85 true

输入样例解释:

第1行表示需要输入n行数据;

第2至n+1行表示待输入的学生信息,格式为学号+分数+导师确认(有此项表示为研究生,本科生没有),每个数据间用空格隔开。

输出样例:

001 fail
002 pass
003 pass
004 fail
005 fail
006 fail
007 pass

输出样例解释:

n行结果,格式为学号+结果,每个数据间空格隔开。

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

class Undergraduate extends Student{
public Undergraduate(String id, double ca) {
	super(id, ca);
	
}
	@Override
	public boolean isReq() {
	
			
			return getCA()>=80;
		
	}
	
}
class Graduate extends Student{
	boolean supervisor;
	public Graduate(String id, double ca,boolean supervisor)  {
		super(id, ca);
		this.supervisor=supervisor;
	}

	@Override
	public boolean isReq() {
		if( getCA()>=85&&supervisor==true) {
			return true;
		}
		else {
			return false;
		}
	}
	
	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值