1、南京工程学院课 程 设 计 任 务 书课 程 名 称 JAVA 及开发环境 院(系、部、中心) 计算机工程学院 专 业 计算机科学与技术 班 级 软件测试 111 起 止 日 期 2013/12/16-2013/12/20(暂定)指 导 教 师 陈科燕 叶核亚 1课程设计应达到的目的本课程设计的目的是为了让学生在学习JAVA 及开发环境课程的基础上,进一步深入巩固所学理论知识、使理论与实际相结合的重要实践环节。本课程设计通过完成一些具有一定难度的程序的编写、调试、运行工作,掌握面向过程程序设计的基本方法,从而提高学生分析问题、解决问题的能力。课程设计是教学中很重要的一项实践环节,它可以帮助学生
2、充分理解课堂教学中的内容,对提高学生的实践认识和实际动手能力都有很重要的实际意义。学生应在一周的时间内,按照课程设计的要求,结合所学的理论知识,查找相关资料,完成好本次课程设计,提高程序编写的能力,为将来的实际工作取得一定的经验。2课程设计题目及要求1.图形用户界面与算法设计(1)Hanno 塔程序要求界面美观,可以由用户手动实现盘子的搬动过程,能够自动演示盘子的搬动过程。 (2)九宫排序分别实现人机交互版和演示版程序,设计图形用户界面显示九宫图的状态,对于任意给定的一个初始状态,给出排序过程中的移动步伐,棋盘大小也设定为 n*n。人机交互版响应鼠标和键盘时间,实现通过鼠标拖动数据及通过上下左
3、右间移动数据的功能。(3)走迷宫(要求见书本)(4)骑士游历(要求见书)(5)连连看游戏(要求见书)(6)连珠五子棋(要求见书)(7)小学算术运算测试程序要求:制作一个可供小学数学运算程序:10 以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数。要求提交 Application 和 Applet 两个版本的程序。2.线程设计(1)纸牌游戏开发一个纸牌游戏,可选择任意一款(蜘蛛纸牌、斗地主等) ,该游戏通过鼠标操作,实现电脑发牌,玩家游戏,最后给出结果。(2)交通信号灯设计一个表示十字路口控制交通信号灯的图形用户界面,交通信号灯的属性包括方向、颜色、车道、显示时间等。4 个方向的信
4、号灯同时运行,其中东西向、南北向的信号灯相同。(3)随机运动的彩色弹弹球画出若干三维风格的彩色弹弹球,每个球获得大小不等的初始动力和速度,运动方向也各不相同,运动过程中速度逐渐减小,双击它,使它在获得动力。(4)斯诺克台球比赛模拟若干彩球按规则排列,击白球撞开他们,则多球同时运动,各求之间进行弹性碰撞,碰撞或撞边都要改变运动轨迹。画出各彩球,显示其运动轨迹,演示比赛过程。(5)饥饿小鱼游戏(要求见书)(6)模拟赛马要求:用图形用户界面实现。能设置比赛时间,马匹的数量等等。在任意时间段内马匹的速度是随机的。开始比赛之后以动画显示赛马过程。提示:使用多线程。3.输入/输出流和文件操作(1)编写一个
5、员工信息管理系统要求界面友好;管理员工的基本信息,包括录入、修改、删除等;可以根据条件查询出需要的信息;所有信息保存至文件。(2)电话号码查询系统。要求:有电话录入,修改,增加,删除,按姓名查询,按电话号码查询,按部门查询,按部门显示,显示所有电话号码信息,打印等功能。 (3)象棋棋谱制作程序要求界面美观,包括棋盘、棋子及各种功能控件,将红黑双方对奕的过程记录下来制作成棋谱,棋谱写入文件,能够根据棋谱自动演示下棋过程。(4)JAVA 源程序编辑器(见书)(5)编写一个记事本程序 要求:用图形用户界面实现。能实现编辑、保存、另存为、查找替换等功能。提示:使用文件输入输出流。(6)日历记事本要求:
6、带有日程提醒功能的日历。1、显示信息:用户可以向前翻页查询前一个月的日期,也可以向后翻页查询下一个月的日期。2、定时提醒:用户可以针对某一天来添加,删除和编辑这一天的日程提醒信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话框。3、查询信息:用户可以查询到某个月的所有的提示信息。4.网络通信(1)实现聊天室,要求聊天室共分为服务器端和客户端两部分,服务器端程序主要负责侦听客户端发来的消息,客户端需登陆到服务端才可以实现正常的聊天功能;服务器端的主要功能包括:在特定端口上进行侦听,等待客户端连接;向已经连接到服务端的用户发送系统消息;当停止服务时,断开所有的用户连接。客户端的主要功能包括
7、:连接到已经开启聊天服务的服务端;当服务器端开启的话,用户可以随时登陆与注销等。(2)开发一个网页浏览器,要求通过在地址栏中输入 URL 地址,可以访问相应的网页;查看指定 URL 的 HTML 源文档内容;可以将正在访问的网页进行保存。(3)网络五子棋设计棋盘的图形用户界面;实现轮流控制、响应对方信号、判断输赢等下棋过程。(4)网络象棋对弈3课程设计任务及工作量的要求包括课程设计计算说明书、图纸、实物样品等要求(1)学习 JAVA 语言程序设计的基本方法,具备一定的独立设计能力;(2)根据题目要求,查阅有关的资料,完成系统功能设计;(3)编程实现系统的功能;(4)提高综合运用所学的理论知识独
8、立分析和解决问题的能力;(5)进一步提高上机调试程序能力;(6)认真撰写规范的课程设计总结报告,内容包括选题内容、要求、算法和数据结构的设计、核心代码的分析、以及对运行效果的分析等。(7)课题分配按如下规则:学号尾数为 1,5,9,13,17,21,25,29,33,36的同学做课题一; 2,6,10,14,18,22,26,30,34,32 的同学做课题二;3,7,11,15,19,23,27,31,35 的同学做课题三;4,8,12,16,20,24,28 的同学做课题四。每位同学在自己选题范围内选题,但是同一课题最多只能有三位同学选择,请大家相互协调,相互谅解,如对其他题目感兴趣,或自拟
9、课题,请提前与老师沟通。4主要参考文献1) JAVA 程序设计实用教程(第 3 版) ,叶核亚编著,电子工业出版社,20102) JAVA 程序设计 ,唐大仕编著,北方交通出版社,20103) JAVA 程序设计与案例 ,刘宝林主编,高考教育出版社,20094)JAVA 程序设计 ,丁岳伟编著,高等教育出版社,20085课程设计进度安排起 止 日 期 工 作 内 容13.12.16 上午 下达课程设计任务,教师讲解13.12.16 下午 学生查询资料13.12.17 模块设计及代码设计13.12.1813.12.19 学生上机调试13.12.20 验收并考查课外时间 撰写设计总结报告6成绩考核办法1、 预设计报告和设计总结报告的综合成绩 30%2、 实际动手能力 50%3、 创新能力 10%4、 态度和纪律 10%成绩分优、良、中、及格和不及格五档。教研室审查意见:教研室主任签字: 年 月 日院(系、部、中心)意见:主管领导签字: 年 月 日