1、Java程序设计考试实验说明及判分标准邢台学院20132014学年第二学期期末考试2012级电气大类本科专业Java程序设计实验试题(本试卷满分100分,考试时间110分钟)说明:本实验考试分简单控制台编程题、简单GUI编程题、综合应用三个题型,每个题型设有A、B、C三个题目,每个学生以抽签的方式每个题型各抽一个题目,作为自己的考试题目。考试过程中可能查看资料,但同学间不能相互交流,也不能传递任何资料。考试结果由两位教师采用现场打分给出,程序不能运行的,不进行评分,按0分计。70分为通过,低于70分为不通过。不通过者三天内申请重考,每个学生有两次重考机会,重考时,重新抽签。一简单控制台编程题(
2、26分)A 编写一个简易学生管理系统。1 功能要求:能输入学生信息、输出学生信息。(1)编写一个Student类,包括姓名、性别、年龄、专业四个属性。(2)编写一个业务类ServeceImp,此类实现如下接口:public interface ServiceInterface public void addStudent(Student student); public List getStudents();实现接口中定义的两个方法,addStudent()方法把一个Student对象保存到一个线性表中,getStudents()方法返回保存Student对象的线性表。(3)编写一个带有主方法
3、的启动类StuMain类,程序运行,输出如下主菜单,(4)如输入“1”,则提示:按提示输入学生信息后,生成Student对象,调用ServeceImp的addStudent方法,将Student对象添加到线性表中,程序返回到主菜单。(5)如输入“2”, 调用ServeceImp的getStudents()方法,获取存放学生信息的线性表,将其中的学生的信息逐条输出,而后程序返回到主菜单。(6)如输入“0”,则输出“程序结束”,而后程序退出。2 评分标准:(1) 正确编写Student类,得4分。(2) 正确编写ServeceImp类,得4分。(3) 正确编写StuMain类得12分,其中 正确显
4、示主菜单2分。 能正确选择主菜单的功能2分。 能正确输入学生信息2分。 能将学生信息正确保存到线性表中2分。 能正确获取学生信息线性表2分。 能正确将学生信息线性表的学生信息逐条输出2分(4) 代码规范:6分(标识符可理解性、正确缩进、运算符前后空格各2分)B 编写一个简易员工管理系统。1 功能要求:能输入员工信息、输出员工信息。(1)编写一个类,包括编号、姓名、性别、年龄四个属性。(2)编写一个业务类ServeceImp,此类实现如下接口:public interface ServiceInterface public void add( ); public get(String no);实
5、现接口中定义的两个方法,add()方法把一个对象以编号no为键,保存到一个HashMap中。get()方法以编号no为参数,从HashMap中获取相应的对象,并返回此对象。(3)编写一个带有主方法的启动类StuMain类,程序运行,输出如下主菜单,(4)如输入“1”,则提示:按提示输入员工信息后,生成对象,调用ServeceImp的add()方法,将对象以相应的编号为键添加到HashMap中,程序返回到主菜单。(5)如输入“2”,则提示:按要求输入员工号,调用ServeceImp的ge ()方法,获取存相应的员工对象,将员工信息输出,而后程序返回到主菜单。(6)如输入“0”,则输出“程序结束”
6、,而后程序退出。2 评分标准:(1) 正确编写类,得4分。(2) 正确编写ServeceImp类,得4分。(3) 正确编写Main类得12分,其中 正确显示主菜单2分。 能正确选择主菜单的功能2分。 能正确输入员工信息2分。 能将员工信息正确保存到HashMap中2分。 能正确从HashMap中获取员工信息2分。 能正确将员工信息输出2分(4) 代码规范:6分(标识符可理解性、正确缩进、运算符前后空格各2分)C 编写一个简易图书管理系统。1 功能要求:能输入图书信息、输出图书信息。(1)编写一个类,包括书名,作者,单价,出版社四个属性。(2)编写一个业务类ServeceImp,此类实现如下接口
7、:public interface ServiceInterface public void add( ); public get();实现接口中定义的两个方法,add()方法把一个对象保存到一个Book数组中(数组的大小为1000)。gets()方法返回保存Book对象的Book数组。(3)编写一个带有主方法的启动类BookMain类,程序运行,输出如下主菜单,(4)如输入“1”,则提示:按提示输入图书信息后,生成对象,调用ServeceImp的add()方法,将对象Book数组中,程序返回到主菜单。(5)如输入“2”, 调用ServeceImp的getBooks()方法,获取存放图书信息的
8、Book数组(要求此数组为实际存书的数组。每个数组元素不能为null),将其中的图书的信息逐条输出,而后程序返回到主菜单。(6)如输入“0”,则输出“程序结束”,而后程序退出。2 评分标准:(1) 正确编写Book类,得4分。(2) 正确编写ServeceImp类,得4分。(3) 正确编写BookMain类得12分,其中 正确显示主菜单2分。 能正确选择主菜单的功能2分。 能正确输入图书信息2分。 能将图书信息正确保存到数组中2分。 能正确获取图书数组2分。 能正确将图书数组中的图书信息逐条输出2分(4) 代码规范:6分(标识符可理解性、正确缩进、运算符前后空格各2分)二简单GUI编程题(34
9、分)A 编写一个计算器程序,运行初始界面如右图所示:1 功能要求:可分别在“数1:”文本域和“数2:”文本域中输入两个数,选择某种运算符,单击“计算”按钮,则将结果显示到“结果:”文本域中。对除法运算,如除数为“0”, “结果:”文本域中显示“除数不能为零”,如果“数1:”和“数2:”两个文本域中输入非数字,“结果:”文本域中显示“输入格式有误”,2 评分标准:满分34分(1)界面正确:4分(2)界面美观:4分(在正确的基础上加分,不界面正确不正确,此项不加分)(3)基本功能正确:12分(加减乘除各3分)(4)正确处理除数为0的情况:4分(5)正确处理文本域中输入格式错误:4分(6)代码规范:
10、6分(标识符可理解性、正确缩进、运算符前后空格各2分)B 编写一个程序,运行初始界面如右图所示:3 功能要求:可通过字体单选按钮、样式复选按钮、颜色单选按钮,设置“Java程序设计基础”的字体、样式和颜色。(1) “Java程序设计基础”由JLabel实现,其背景为绿色。(2) 要求字体的大小是10号字,(3) 样式复选按钮中选择粗体时,采用样式;选择斜体时,采用样式;两者都选择时,两种都采用;两者都都不选时,采用样式。4 评分标准:满分34分(1)界面正确:4分(2)界面美观:4分(在正确的基础上加分,不界面正确不正确,此项不加分)(3)基本功能正确:20分(每项功能2分(包括样式复选按钮都
11、不选的情况),字体大小正确2分,如果某个按钮的功能不能影响其它按钮的设置,如果影响了,此功能不得分。)(4)代码规范:6分(标识符可理解性、正确缩进、运算符前后空格各2分)C 编写一个程序,运行初始界面如右图所示:5 功能要求:可通过单击“顺时针”按钮或“逆时针”按钮,使不同颜色的“马”向顺时针方向或逆时针移动一次。(1) 窗体采用边框布局。(2) 各颜色的“马”由JLabel实现,对齐方式为居中。6 评分标准:满分34分(1)界面正确:8分(2)界面美观:4分(在正确的基础上加分,不界面正确不正确,此项不加分)(3)基本功能正确:16分(每项功能8分(每正确转一次2分)(4)代码规范:6分(
12、标识符可理解性、正确缩进、运算符前后空格各2分)三综合应用(40分)设计实现一个简单的图书管理系统1功能说明(1)系统启动的主窗口如右图所示。此图体为一个JFrame,采用边框布局。“North”格中放一个JLabel,其中文字为“图书管理系统”, JLabel的背景色为蓝色,前景色为黄色;“West” 格中放一个JPanel,采用4行1列的的网络布局,放四个命令按钮作为主菜单,分别为“添加图书”、“删除图书”、“修改图书”和“查找图书”。(2)单击“添加图书”按钮,在窗体的“Center”格中,如果有组件,删除这,并添加一个AddPanel,“添加图书”按钮变成不可用,如下图所示:AddPa
13、nel采用边框布局,“North”格中放一TypePanel。“Center”格中放一个完成具体操作的Panel,如果TypePanel中的“书籍”单选按钮,“Center”格中放AddBookPanel,“报纸”单选按钮,“Center”格中放AddPaperPanel,“期刊”单选按钮,“Center”格中放AddJournalPanel,在更换Panel时,要把原来的Panel移出。TypePanel、AddBookPanel、AddPaperPanel、AddJournalPanel说明如下: TypePanel如下图:单击此Panel中的不同单行按钮,更换AddPanel“Cente
14、r”格中的Panel。 AddBookPanel如下图:在此Panel中的文本框中分别输入书名和作者,单击“保存”按钮,将生成Book对象,并调用ReadingServce的addReading(Reading reading)方法,将Book对象保存到线性表中。单击“重置” 按钮,清空两个文本框。 AddPaperPanel如下图:在此Panel中的文本框中分别输入报纸名称、主管部门和报纸类型,单击“保存”按钮,将生成Paper对象,并调用ReadingServce的addReading(Reading reading)方法,将Paper对象保存到线性表中。单击“重置” 按钮,清空三个文本框
15、。 AddJournalPanel如下图:在此Panel中的文本框中分别输入期刊名称、主管部门和期刊类型,单击“保存”按钮,将生成Journal对象,并调用ReadingServce的addReading(Reading reading)方法,将Journal对象保存到线性表中。单击“重置” 按钮,清空三个文本框。(3)单击“删除图书”按钮,在窗体的“Center”格中,如果有组件,删除之,并添加一个RemovePanel,“删除图书”按钮变成不可用,如下图所示:RemovePanel采用边框布局,“North”格中放一TypePanel。“Center”格中放一个完成具体操作的Panel,如
16、果TypePanel中的“书籍”单选按钮,“Center”格中放RemoveBookPanel,“报纸”单选按钮,“Center”格中放RemovePaperPanel,“期刊”单选按钮,“Center”格中放RemoveJournalPanel,在更换Panel时,要把原来的Panel移出。TypePanel、RemoveBookPanel、RemovePaperPanel、RemoveJournalPanel说明如下: TypePanel如下图:单击此Panel中的不同单行按钮,更换RemovePanel “Center”格中的Panel。 RemoveBookPanel如下图:在此Pan
17、el中的文本框中分别显示书名和作者,单击“上一个”或“下一个”按钮将显示上一本或下一本书的信息。单击“删除” 按钮,并调用ReadingServce的removeReading(int id)方法,将删除当前显示的一本书,单击“重置” 按钮,将刷新、并初始化文本框中显示的图书信息。 RemovePaperPanel如下图:在此Panel中的文本框中分别显示报纸相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份的信息。单击“删除” 按钮,并调用ReadingServce的removeReading(int id)方法,将删除当前显示的一份报纸,单击“重置” 按钮,将刷新、并初始化文本框
18、中显示的报纸信息。 RemoveJournalPanel如下图:在此Panel中的文本框中分别显示期刊相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份的信息。单击“删除” 按钮,并调用ReadingServce的removeReading(int id)方法,将删除当前显示的一份期刊,单击“重置” 按钮,将刷新、并初始化文本框中显示的期刊信息。(4)单击“修改图书”按钮,在窗体的“Center”格中,如果有组件,删除之,并添加一个ModifyPanel,“修改图书”按钮变成不可用,如下图所示:ModifyPanel采用边框布局,“North”格中放一TypePanel。“Cente
19、r”格中放一个完成具体操作的Panel,如果TypePanel中的“书籍”单选按钮,“Center”格中放ModifyBookPanel,“报纸”单选按钮,“Center”格中放ModifyPaperPanel,“期刊”单选按钮,“Center”格中放ModifyJournalPanel,在更换Panel时,要把原来的Panel移出。TypePanel、ModifyBookPanel、ModifyPaperPanel、ModifyJournalPanel说明如下: TypePanel如下图:单击此Panel中的不同单行按钮,更换RemovePanel “Center”格中的Panel。 Mod
20、ifyBookPanel如下图:在此Panel中的文本框中分别显示书名和作者,单击“上一个”或“下一个”按钮将显示上一本书或下一本书的信息。如果修改文本框中的信息,单击“保存” 按钮,并调用ReadingServce的modifyReading(Reading reading)方法,将当前显示的一本书的信息进行修改,单击“重置” 按钮,将刷新、并初始化文本框中显示的图书信息。 ModifyPaperPanel如下图:在此Panel中的文本框中分别显示报纸相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份的信息。如果修改文本框中的信息,单击“保存” 按钮,并调用ReadingServc
21、e的modifyReading(Reading reading)方法,将当前显示的一份报纸的信息进行修改,单击“重置” 按钮,将刷新、并初始化文本框中显示的报纸信息。 ModifyJournalPanel如下图:在此Panel中的文本框中分别显示期刊相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份的信息。如果修改文本框中的信息,单击“保存” 按钮,并调用ReadingServce的modifyReading(Reading reading)方法,将当前显示的一份期刊的信息进行修改,单击“重置” 按钮,将刷新、并初始化文本框中显示的期刊信息。(5)单击“查找图书”按钮,在窗体的“Ce
22、nter”格中,如果有组件,删除之,并添加一个FindPanel,“查找图书”按钮变成不可用,如下图所示:FindPanel采用边框布局,“North”格中放一TypePanel。“Center”格中放一个完成具体操作的Panel,如果TypePanel中的“书籍”单选按钮,“Center”格中放FindBookPanel,“报纸”单选按钮,“Center”格中放FindPaperPanel,“期刊”单选按钮,“Center”格中放FindJournalPanel,在更换Panel时,要把原来的Panel移出。TypePanel、FindBookPanel、FindPaperPanel、Fin
23、dJournalPanel说明如下: TypePanel如下图:单击此Panel中的不同单行按钮,更换RemovePanel “Center”格中的Panel。 FindBookPanel如下图:在此Panel中的文本框中分别显示书名和作者,单击“上一个”或“下一个”按钮将显示上一本或下一本书的信息。如果在书名文本框中输入一个书名,单击“查找” 按钮,并调用ReadingServce的findReading(String name,int type)方法,查找到的所有同名的图书,单击“上一个”或“下一个”按钮将显示上本书或下一本同名的书的信息。 FindPaperPanel如下图:在此Pane
24、l中的文本框中分别显示显示报纸相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份报纸书的信息。如果在报纸名称文本框中输入一个报纸名称,单击“查找” 按钮,findReading(String name,int type)方法,查找到的所有同名的报纸,单击“上一个”或“下一个”按钮将显示上一份或下一份同名的报纸的信息。 FindJournalPanel如下图:在此Panel中的文本框中分别显示期刊相关信息,单击“上一个”或“下一个”按钮将显示上一份或下一份期刊的信息。如果在期刊名称文本框中输入一个期刊名称,单击“查找” 按钮,findReading(String name,int ty
25、pe)方法,查找到的所有同名的期刊,单击“上一个”或“下一个”按钮将显示上一份或下一份期刊同名的期刊的信息。2题型、要求及评分标准本题部分功能已实现,只要求学生实现一项主要功能,分为A、B、C三个题型:A添加图书、删除图书、查找图书的功能已实现,不要修改相应的代码。只需要完成修改功能。 评分标准(1)业务类业务方法实现:8分(正确8分,不正确不得分)(1)界面:12分(书籍、报纸、期刊各4分)(3)功能选择:12分(主菜单选择、书籍、报纸、期刊选择各3分)(3)功能实现:8分(上一个、下一个、删除、重置2分)B添加图书、修改图书、查找图书的功能已实现,不要修改相应的代码。只需要完成删除功能。 评分标准(1)业务类业务方法实现:8分(正确8分,不正确不得分)(1)界面:12分(书籍、报纸、期刊各4分)(3)功能选择:12分(主菜单选择、书籍、报纸、期刊选择各3分)(3)功能实现:8分(上一个、下一个、删除、重置2分)C删除图书、修改图书、查找图书的功能已实现,不要修改相应的代码。只需要完成添加功能。 评分标准(1)业务类业务方法实现:6分(正确6分,不正确不得分)(1)界面:12分(书籍、报纸、期刊各4分)(3)功能选择:12分(主菜单选择、书籍、报纸、期刊选择各3分)(3)功能实现:10分(保存6分,重置4分)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1