首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Java程序,填充代码中的空缺,将解答填入答题纸的对应档内。 【说明】 某学校在学生毕业时要求对其成绩进行综合评定,学生的综合成绩(GPA)由其课程加权平均成绩(Wg)与附加分(Ag)构成,即GPA=Wg+Ag。 设一
阅读以下说明和Java程序,填充代码中的空缺,将解答填入答题纸的对应档内。 【说明】 某学校在学生毕业时要求对其成绩进行综合评定,学生的综合成绩(GPA)由其课程加权平均成绩(Wg)与附加分(Ag)构成,即GPA=Wg+Ag。 设一
admin
2013-07-03
53
问题
阅读以下说明和Java程序,填充代码中的空缺,将解答填入答题纸的对应档内。
【说明】
某学校在学生毕业时要求对其成绩进行综合评定,学生的综合成绩(GPA)由其课程加权平均成绩(Wg)与附加分(Ag)构成,即GPA=Wg+Ag。
设一个学生共修了n门课程,则其加权平均成绩(Wg)定义如下:
其中,gradei、Ci分别表示该学生第i门课程的百分制成绩及学分。
学生可以通过参加社会活动或学科竞赛获得附加分(Ag)。学生参加社会活动所得的活动分(Apoints)是直接给出的,而竞赛分(Awards)则由下式计算(一个学生最多可参加m项学科竞赛):
其中,l
i
和S
i
分别表示学生所参加学科竞赛的级别和成绩。
对于社会活动和学科竞赛都不参加的学生,其附加分按活动分为0计算。
下面的程序实现计算学生综合成绩的功能,每个学生的基本信息由抽象类Student描述,包括学号(stuNo)、姓名(name)、课程成绩学分(grades)和综合成绩(GPA)等,参加社会活动的学生由类ActStudent描述,其活动分由Apoints表示,参加学科竞赛的学生由类CmpStudent描述,其各项竞赛的成绩信息由awards表示。
[Java代码】
abstract class Student{
protected String name;
protected int stuNo;
protected double GPA; /*综合成绩*/
protected int[][]grades; /*各门课程成绩和学分*/
//其他信息略
public Student(int stuNo,String name,int[][]grades){
this.stuNo=stuNo;this.name=name;this.grades=grades;
}
(1)
;
double computeWg(){
int totalGrades=0,totalCredits=0:
for(int i=0;i<grades.length;i++){
totalGrades+=grades
[0]*grades
[1];
totalCredits+=grades
[1];
}
return(double)totalGrades/totalCredits;
}
}
class ActStudent extends Student{
private int Apoints;
ActStudent(int stuNo,String name,int[][]grades,int Apoints){
(2)
;
this.Apoints=Apoints;
}
public double getGPA(){
return GPA=
(3)
;
}
}
Class CmpStudent extends Student{
Private int[][]Awards;
CmpStudent(int stuNo,String name,int[][]grades,int[][]awards){
(4)
;
this.Awards=awards;
}
publ ic double getGPA(){
int totalAwards=0;
for(int I=0;i<Awards.length;i++){
totalAwards+=Awards
[0]*Awards
[1];
}
return GPA=
(5)
;
}
}
public class GPASystem{//以计算3个学生的综合成绩为例进行测试
public static void main(String[]args){
int g1[][2]={{80,3),{90,2},{95,3},{85,4},{86,3)),
g2[][2]={{60,3),{60,2},{60,3},{60,4},{65,3)),
g3[][2]={{80,3},{90,2},(70,3},{65,4},{75,3));//课程成绩
int[][]e1={{2,3},{1,2)},e2={{1,3});//竞赛成绩
Student student[]={
new ActStudent(i01,”John”,g1,3),//3为活动分
new ActStudent(102,”Zhang”,g2,0),
new ActStudent(103,”Li”,g3,e2),
};
//输出每个学生的综合成绩
for(int i=0;i<student.length;i++){
System.out.println(
(6)
);
}
}
}
选项
答案
(1)abstract double getGPA() 注:考生若在上述答案之前加public或pretected不扣分 (2)super(stuNo,name,grades) (3)computeWg()+Apoints或super.computeWg()+Apoints (4)super(stuNo,name,grades) (5)computeWg()+totalAwards或super.computeWg()+totalAwards (6)students[i].getGPA()
解析
本题的Java程序功能是计算学生的综合成绩(GPA)其中GPA由其课程加权平均成绩Wg与附加分Ag构成,即GPA=Wg+Ag。与试题五类似,首先定义了一个getGPA()函数。(1)填abstract double getGPA(),doub-le定义了GPA的值都为双精度浮点数。(2)是计算学生的活动的附加分,调用super()函数,括号内的变量用已经定义过的变量名替代,即super(stuNo,name,grades)。继续定义函数getGPA函数,引用了题目中给的公式GPA=Wg+Ag,因为该函数式在定义学生的活动附加分的函数中定义的,所以(3)应填computeWg()+Apoints。(4)是计算学生竞赛的附加分的函数,其中又调用了一次Student函数,所以同(2)一样填super(stuNo,name,grades)。(5)同(3)类似,需要填getGPA函数,引用了题目中给的公式GPA=Wg+Ag,与(3)不同的是,这次wg加的是竞赛的附加分所以(5)应填computeWg()+Awards。(6)是在主函数的for循环里面,将students
的值赋值给GPA,所以(6)应填students
.getGPA(),对GPA赋值并输出。
转载请注明原文地址:https://kaotiyun.com/show/tnjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某计算机房夏季的环境温度要求控制在28℃至32℃,该范围可简写为______。
图文混排是Word的特色功能之一,下列叙述中,不正确的是(46)。
在Excel2007中,如果在A1单元格输入“计算机”,在A2单元格输入“软件资格考试”,在A3单元格输入“=A1&A2”,按回车键后,结果为______。
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
PowerPoint可以通过插入(55)来完成统计、计算等功能。
在Excel中,函数“=AVERAGE(A1,.B4)”的含义是()。
用计算机处理信息时,常对许多信息采用适当的编码。例如职工编码、商品编码、性别编码、文化程度编码等。编码有许多好处,但不包括(66)。
文件的使用权限包括完全控制、允许写入、允许读取、允许运行、允许删除等,其中完全控制、允许写入、允许读取、允许运行都允许用户进行的操作是(38)。
在Access2007中,若要想查询所有姓名为2个汉字的学生记录,应在准则中输入______。
随机试题
40.有系和学生表如图所示,在建立系与学生的一对多关系时,选择的联接类型是:包括“系”表中的所有记录和“学生”表中联接字段相等的那些记录,并创建了一个列出系名称和学号的查询对象。试将该查询的结果填写在下图的答案表中。
关于稳定型心绞痛的发病机制,下列提法正确的是
慢性根尖周炎反复发作后引起的牙周病变所具有的特点正确的是
以下涂料中,易挥发且对人体有毒害的是:
监理工程师在施工阶段的进度控制的工作内容有()。
项目资本金以工业产权和非专利技术作价出资的比例一般不超过项目资本金总额的()。
商业银行利用衍生品可以完全对冲其所面临的市场风险,而且不会产生新的风险。()
某甲出生后不久,父母协议离婚。引起某甲与其父母之间抚养关系发生及甲之父母婚姻关系解除的法律事实分别是()。
陈先生要举办一个亲朋好友的聚会。他出面邀请了他父亲的姐夫,他姐夫的父亲,他哥哥的岳母,他岳母的哥哥。陈先生最少出面邀请了几个客人?
Whatdoesthemanmean?
最新回复
(
0
)