1、Java程序设计课程项目题目 1、 汽车出租管理程序 功能要求:1)基本信息管理,包括车辆及车辆租赁信息的增、删、改、查功能;可出租的汽车有客车、面包车和轿车,要求使用继承设计类结构; 2)客户信息管理,包括客户信息的增、删、改、查功能,可对客户分组,不同组别给予不同的折扣,添加客户信息时刻增加担保人信息; 3)日常业务管理,包括汽车租赁、汽车归还等功能,归还汽车时进行结算价钱。 4)数据可存到数据库中。 2、 图形编辑与计算管理程序 功能要求:1)利用菜单选择不同功能; 2)可利用字符绘制三角形、矩形、圆形
2、和梯形,具体尺寸和坐标可由用户输入; 3)可计算各图形的面积; 4)可统计各图形个数及图形总数; 5)要求用到多态和接口等知识点; 6)要求有异常处理机制。 3、 个人通讯录管理程序 功能要求:1)通讯录信息包括姓名、性别、职业、手机号、email地址等属性; 2)能够保存通讯录信息(数组、文件、数据库); 3)能够增加通讯录信息; 4)能够修改通讯录信息; 5)能够删除通讯录信息 6)能够查找通讯录信息(查询分为快速查找(首字母查找)、精确查找和按组查找,而且可选择按姓名
3、性别、手机号、email地址等查找); 7)可为通讯录设置组(组也可以增加、修改、删除、查询); 8)要求用到大部分Java知识,如继承、多态、接口和异常处理等。 9)数据可存到数据库中。 4、 计算器模拟程序 功能要求:1)要求实现的运算:+、-、×、÷、%(取余)、求平方根,求平方等; 2)支持的数据类型有整型、浮点型、复数类型(复数不能进行后三种运算)等; 3)用户从键盘输入两个数据,在显示器输出运算结果; 4)要有菜单让用户选择功能,可以为命令行式的菜单,也可以为图形方式的菜单。 5、 自动售货机模拟程序 功能要求
4、1)自动售货机只出售矿泉水、冰红茶、果粒橙、可乐和雪碧等几种饮料; 2)初始显示各种饮料的剩余瓶数及价格,用户输入要购买的饮料及瓶数,并输入投递的金额,系统自动计算找零,并提示饮料出仓,售完的饮料给出提示; 3)系统只接受1元、5元和10元的钱币,一次最多只能买3瓶饮料,系统能够识别钱币的面值,不合要求的给出错误提示。 4)数据可存到数据库中。 6、 银行账户管理程序 问题描述 设计一个银行账户管理程序,账户的信息有账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址等,允许用户进行如下操作:开户、销户、存款、取款、转账、查询,一
5、个用户可以有多个户头,账户的数值没有上限。 基本要求 程序运行时,可以由用户选择进行何种操作,开户操作要求输入用户信息后自动获取账号,用户销户后账号被回收,并且该账号可以继续分配给其它账户,不允许用户透支,根据姓名或账号可以进行用户的信息查询,所有的账户信息应存放到一个文件中,也可以存放到数据库中,可以随时访问和更新。 测试数据 程序应输入不少于10人的账户信息,应考虑到人员同名的情况。 实现提示 可定义一个账户类存放账户信息以及执行相应的操作,可以用一个链表类来管理账户。 选作内容 在上述程序的基础上,添加联名账户(一个联名账户有两个拥有者)的管理 。 7、 拍卖系统
6、 功能要求:1)拍品维护(增、删、改、查),拍品可进行分类(简单分为古玩、房产、汽车三类); 2)竞价者维护(增、删、改、查); 3)喊价、竞价与成交; 4)拍品存入集合(ArrayList)或数据库内; 5)选做:可在一定时间内竞拍。 6)数据可存到数据库中。 8、 运动会组织管理系统 功能要求: 1)参赛人员管理: 可以就参赛人员或参赛队进行管理,系统自动可为每个参赛人员或参赛队分配唯一参赛号码。 参赛队的基本信息包括:队名,领队,队员组成,唯一参赛号码 参赛队可以由运动员
7、或由运动队组成。 可以对参赛队基本信息进行查看和修改 可以对参赛队进行注册和注销 运动员的基本信息包括:姓名,参赛项目,唯一参赛号码,年龄,联系电话,电子信箱 可以对运动员的基本信息进行查看和修改 可以对运动员进行注册和注销 2)赛程管理: 可以自动根据赛制类型和参赛人员数量等生成赛程表。其中支持的赛制包括循环赛,淘汰赛两种类型。 生成的赛程表有一组场次列表构成。每个场次的信息包括:参赛队伍,时间,场地,比赛结果。 赛程的定制可以选择绑定或不绑定参赛人员。 允许对自动生成的赛程的场地,时间,参赛人员表进行修改。 可以在赛程表的基础上输入比赛结果。 生成的赛程
8、表可以保存,并重新装载。 所生成的赛程可以转存为不同格式:csv格式。 可以方便地扩展本系统为其它类型的比赛定制赛程。 3)查询及报表功能: 管理员可以查看并打印参赛人员的名单 管理员可以查看并打印最终的赛程表。 管理员可以查看并打印各个队或各个人的具体赛程表。 4)数据可存到数据库中。 10、足球联赛积分 问题描述 足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联
9、赛未结束则两队名次并列,本程序不做这方面要求)。试编一程序统计最近一轮比赛后,各队积分及排名。 基本要求 设积分表结构如下:队名(不超过15个字符),已比赛的场数,赢的场数,平的场数,负的场数,进球数,失球数,积分。积分表放在正文文件中。最近一轮的结果从键盘输入,其形式为:主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在屏幕上显示。 测试数据 可选择我国当年的甲A或甲B联赛的数据输入,并检查与报章公布的数据是否一致。 实现提示 定义一个球队类,每个球队是均是此类的对象
10、由于联赛中参赛的队伍数是固定的,因此可用对象数组来实现(当然也可以用链表结构)。每输入两个队的比赛成绩,则相应的队的有关数据(比赛场数,赢的场数,平的场数,负的场数,进球数,失球数,积分等)即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数)排出名次并输出。数据可存到数据库中。 选做内容 篮球联赛(如NBA)往往采用胜率来决定名次,胜率就是取胜的场数与比赛场数之比。若胜率相同,再由净胜球及进球数来决定名次,通过继承性完成上述要求。 11、颜色匹配游戏 12、图片显示程序,要求通过按钮选择图片文件并加载到当前窗口界面中,并能够缩放和左右移动观看,
11、选做:可在图片上做标记。 13、备忘录程序,要求以分割窗口形式显示主界面,左侧窗口以树形显示时间,显示从今天开始的一周时间,点某一时间后,右侧窗口显示当天的备忘录。 14、多文件上传程序,从界面通过按钮选择多个文件(文件类型任意),然后,点击“上传”按钮,将所选文件上传至服务器的指定位置,该位置可在上传前由用户指定。 15、电子病历程序,从界面输入病人信息,然后存入数据库中,医生可填入诊断报告。 16、十字路口交通简单模拟程序 (多线程)* 主要功能:在本图上将显示双向两车道的带人行横道的十字街道。启动两个线程控制南北及东西四个方向的交通信号灯和信号的持续时间。 在有交通信号灯控
12、制的场景中,启动一个线程再在各个路口随机添加车辆,每个车辆本身就是一个线程,它的运行要受到交通信号灯的简单控制,即红灯停,绿灯和黄灯通过。在十字路口中心的路口交汇区,车辆有可能撞车,本案例按照黄灯通过的方式作简单处理。 一辆车走完过了街道,即该车的线程结束了,该车也就在屏幕中消失了。 对于十字路口的街道,设置了一个车辆的运行总数。当场中的车辆没有达到运行总数,产生车辆的线程将继续向场中添加车辆。当场中的车辆达到运行总数,产生车辆的线程的将停止添加车辆。当有车辆消失后,场中的车辆少于运行总数,这时,产生车辆的线程将继续添加车辆。也就是说,场中的车辆总数是一个动态的数目。同时,可以看到车辆
13、运行是川流不息的。 另外,在程序的菜单中,设置了整个系统的暂停和恢复。 17、聊天室 18、时钟模拟 19、万年历 20、记事本 21、动画程序(如气泡上升,小人走步等)* 22、舒尔特方格训练程序,带计时判错功能。 1 4 7 5 9 8 3 6 2 23、学生选课系统 主要功能:学生管理、教师管理、课程管理、选课等。 24、网络监听程序 要求: 使用图形用户界面。 有服务器和客户端,服务器监听客户端的登陆。即:如果A客户端登陆服务器,则服务器界面上的A字母对应的红灯变成绿色。 绿灯表示连接,红灯表示断线。 提示:socket的监
14、听方法 25、图书信息管理系统 要求: 使用图形用户界面 用数据库建立1或2个图书信息表。(不限使用哪种数据库) 能连接数据库并实现查询、增、删、改等功能。 26、打字训练测试软件 要求:设计一个英文打字测试软件。界面中显示一段文字,然后接收用户键盘输入,当输入正确时,原字母变成绿色,若错误,则原字母变成红色,最后给出正确率,选做:可记录录入速度,还可设置难度等级。 27、电话号码查询系统。 要求:有电话录入,修改,增加,删除,按姓名查询,按电话号码查询,按部门查询,按部门显示,显示所有电话号码信息,打印等功能。初始界面可以表格形式显示所有电话号码。 28、记忆测试系统
15、要求:编程完成记忆测试系统,主要实现以下功能:1)系统主界面显示30个按钮,分5行6列,其后对应5种动物头像,每种头像6个;2)测试者通过鼠标单击按钮,翻看其后对应的动物头像;3)用户根据翻看(或测试开始时展示的随机头像分布),从30个按钮背后隐藏的头像中找到连续的6个相同的头像,测试完成。 测试开始时,系统给出5种头像的随机分布,展示时间为2秒;随后,头像被隐藏并全部转为同一种头像(非上述5种头像);此后,测试者通过鼠标寻找连续的6个相同头像。 测试系统要求具有计时功能。 29、货物销售管理系统 要求:利用Java编程实现一个货物销售管理系统(单机版),采用Access数据库。
16、自行设计数据库结构,并实现以下基本功能:1)货物信息录入;2)销售人员的录入;3)货物销售登录;4)货物查询; 5)货物销售查询;6)货物销售统计。7)数据可存到数据库中。 30、超市收银系统 要求:使用图形用户界面。 由收银员输入顾客的会员卡卡号(若有卡)、所购商品的货号等。从数据库中取出有关价格信息,再把这些信息返回给收银台。同时把该收银台的销售总量和有关种类商品的剩余量以及该持卡顾客的消费情况交数据库存储以供查询。 另外,对没有卡的消费情况不记录该顾客的消费情况等个人信息。如果一个未持卡顾客一次购物满200元,可为其发放一张会员卡,以后在该商场购物可向9折优惠。数据可存到数据库
17、中。 31、图书借阅管理系统 要求:编程实现图书的借阅管理功能(单机版),采用Access数据库或MySql数据库。主要提供以下功能:1) 图书的录入;2)人员信息的录入;3)图书的查询;4)借阅图书的录入;5)人员借阅信息的显示。6)数据可存到数据库中。 32、五子棋 功能要求:可两人对下(用鼠标操作),判断胜负。 界面要求:美观简洁,有简单操作说明。 33、敏感词汇分析 要求: 任意选择一个文本文件,分析该文件,如果存在敏感词汇(这些词汇保存在sentive.txt文件中,每个词占一行),报告每个词出现的次数。 34、扫雷游戏 35、作业管理系统 主要功能:学生管理
18、教师管理、题型管理、交作业、判作业。(可用一种题型设计) 36、连连看小游戏 37、俄罗斯方块游戏 38、画板模拟程序,可画点、线、矩形、圆形、可选线型、线条颜色、填充颜色等。 考核要求: 1、 每4名同学为一组,每组选一名组长,以组为单位上交阶段性成果,成果放在以组长名字命名的文件夹中,各项成果中均要说明组内每名成员的分工。 2、 阶段性成果主要包括需求分析说明书,设计说明书,最终代码。 3、 需求分析说明书内容:功能分析、用户角色分析、程序执行流程、软件功能模块图、技术难点(可适当画图说明) 4、 设计说明书内容:运行环境(需要外部开源类库支持的也要说明)、数据库设计(表格)、类设计(类图)、开发计划 5、 最终代码,要求有注释 6、 想得“优”或“良”的同学需要演示,演示时间:18周






