程序设计参考题目0304.docx
《程序设计参考题目0304.docx》由会员分享,可在线阅读,更多相关《程序设计参考题目0304.docx(23页珍藏版)》请在冰豆网上搜索。
程序设计参考题目0304
题目1多线程猜数字游戏
一、课题描述:
利用Java多线程机制编写一个由三个线程玩猜数字的游戏。
第一个线程负责随机给出1~100之间的一个整数,第二、三个线程负责猜出这个数。
要求每当第二或第三个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜对了”。
猜数之前,要求第二、第三个线程要等待第一个线程设置好要猜测的数。
第一个线程设置好猜测数之后,第二、第三个线程要轮流猜数,其原则是:
第二或第三个线程给出自己的猜测后,等待第一个线程给出提示;第一个线程给出提示后,等待第二或第三个线程给出猜测,如此进行,直到其中一个线程给出正确的猜测后,三个线程均进入死亡状态。
二、课题要求
基本要求:
1.熟悉使用Thread创建线程对象,通常使用的构造方法是:
Thread(Runnabletarget);该构造方法中的参数是一个Runnable类型的接口。
2.熟悉线程同步的概念及方法,如wait(),notify(),notifyAll()等。
3.利用Java多线程机制编写一个由三个线程玩猜数字的游戏,第一个线程负责随机给出1~100之间的一个整数,第二、三个线程负责猜出这个数。
扩展要求:
1.给程序增加GUI设计,使程序具有更好的交互界面。
2.将游戏扩展为网络游戏,服务器端负责出数字,两个客户端负责猜数字。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.了解java多线程机制
4
2.会使用Thread创建线程对象
2
3.熟悉线程同步的概念及相应方法
4
4.熟悉GUI设计中基本组件及布局
4
5.熟悉事件处理机制
4
6.熟悉网络相关协议及网络套接字概念
4
7.小组分工及讨论
4
8.资料搜集与整理
4
9.编写程序
20
10.调试及测试
18
11.写总结报告
8
12.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目2压缩和解压缩文件
一、课题描述:
zip文件是一种流行的档案文件,可以将若干个文件压缩到一个zip文件中。
由于网络带宽有限,数据文件的压缩有利于数据在Internet上的快速传输和存储。
本课题要求用java语言完成对文件的压缩与解压缩。
二、课题要求
基本要求:
1.熟悉文件输入输出流;
2.了解文件压缩和解压缩的过程;
3.利用ZipEntry、ZipInputStream和ZipOutputStream三个Java类实现zip数据压缩与解压缩;
扩展要求:
1.给程序增加GUI设计,使程序具有更好的交互界面。
2.增加一个对话框,使用户可以使用这个对话框选择要压缩和解压缩的文件。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.了解java输入输出流类
4
2.熟悉文件输入输出操作过程
2
3.熟悉ZipEntry、ZipInputStream和ZipOutputStream三个类
8
4.熟悉GUI设计中基本组件及布局
4
5.熟悉事件处理机制
4
6.小组分工及讨论
4
7.资料搜集与整理
4
8.编写程序
20
9.调试及测试
18
10.写总结报告
8
11.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目3Java聊天室
一、课题内容
利用java语言实现基于C/S模式的聊天室程序。
聊天室分为服务器端和客户端两部分,服务器端程序主要负责侦听客户端发来的消息,客户端需登录到服务器端才可以实现正常的聊天功能。
二、课题要求
基本要求:
1.熟悉网络基本协议;
2.掌握网络套接字的概念和类型;
3.分别对套接字客户端和服务器端编程;
扩展要求:
1.给程序增加GUI设计,使程序具有更好的交互界面。
2.使用java链表对用户信息进行存储。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉网络通信基本协议
4
2.熟悉网络套接字的概念
2
3.熟悉客户端套接字和服务器端套接字的编程过程
8
4.熟悉GUI设计中基本组件及布局
4
5.熟悉事件处理机制
4
6.小组分工及讨论
4
7.资料搜集与整理
4
8.编写程序
20
9.调试及测试
18
10.写总结报告
8
11.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目4计算器的实现
一、课题描述
计算器是Windows操作系统附带的一个非常实用的程序。
本课题要求利用java语言设计实现一个与之类似的计算器。
计算器有两种类型,一种是标准型计算器,一种是科学型计算器。
其中标准型可以进行基本的算术运算和简易存储功能。
本课题主要实现第一种。
二、课题要求
基本要求:
1.熟悉java的GUI设计及基本组件和布局;
2.熟悉事件处理机制;
3.完成标准型计算器的基本计算功能;
扩展要求:
1.对标准型计算器增加倒数、清零、退格等功能;
2.增加科学型计算机相应功能。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
6
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
20
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目5windows记事本(3人)
一、课题内容
编写一个简单的Windows记事本程序,要求程序有合理的界面设计,能够在界面中实现对文件的写入,保存和全选,复制,剪贴,复制等多种编辑功能。
并且能够顺利关闭界面,退出程序。
二、课题要求
基本要求:
(1)文件的新建,打开,保存和另存;
(2)对文件的编辑,如全选,复制,剪切,粘贴;
(3)执行完操作后,能够顺利关闭记事本。
扩展要求:
(1)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能,比如设置文字的字体、字号、颜色等。
各项功能可以使用按钮或者菜单来实现。
(2)变量、方法命名符合规范。
(3)注释详细:
每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(4)程序的层次清晰,可读性强。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所做的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求:
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
4
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
22
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
五、主要仪器设备
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目6万年历程序(3人)
一、课题内容
设计一个万年历程序,根据输入的年份和选择的月份以月历的形式显示万年历的内容。
能体现出某日是星期几。
二、课题要求
基本要求:
(1)通过图形界面实现万年历程序。
(2)能以月历形式显示日期与星期。
(3)支持用户自己输入年份,并提供月份的下拉组合框来选择月份。
(4)通过点击“更新”来刷新日历。
(5)具体年份从1900年至2100年即可。
扩展要求:
(1)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(2)变量、方法命名符合规范。
(3)注释详细:
每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(4)程序的层次清晰,可读性强。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所做的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求:
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
4
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
22
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
五、主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目7模拟银行自动取款机(3人)
一、课题内容
设计一个系统模拟银行自动取款机功能,当输入给定的卡号和密码(初始卡号为888888和密码为123456)时,能登录系统,用户可以按照以下规则进行:
(1)查询余额:
初始余额为50000元。
(2)取款:
每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。
(3)退出。
二、课题要求
基本要求:
(1)要求使用图形用户界面,至少设计两个界面:
登录界面和取款界面,查询和退出等功能可以集成在取款界面上,也可单独设计。
(2)界面设计要求样式美观、简单明了、方便易操作。
扩展要求:
(1)从键盘读入取款金额时,对读入的数据要有一定的错误检查能力,如输入的不是数字,或输入的是0、负数、小数等。
(2)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(3)注释详细,变量、方法命名符合规范。
程序的层次清晰,可读性强。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所做的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求:
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
4
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
22
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
五、主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目8算术我最棒(3人)
——100以内加减法运算练习
一、课题描述
编写一个能够自动生成小朋友算术练习题目的程序。
设计一个程序,要求能够随机生成每个题目,并具有以下基本功能:
(1)要求题目以单项选择题的形式出现。
(2)完成一题后自动判断答案是否正确,分别弹出不同的提示,并自动更新成下一题。
(3)单击“退出”时,汇总本次计算结果,共完成几题,正确率,并给出相应评语。
确定后正式退出。
二、基本要求
(1)要求程序使用图形界面,界面友好,符合小朋友的特点,能激发小朋友做题兴趣。
(2)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(3)注释详细,变量、方法命名符合规范。
程序的层次清晰,可读性强。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所做的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求:
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
4
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
22
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
五、主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目9数据库编程
一、课题描述
数据库管理系统是一种常见的数据管理软件,数据库是按一定模式存储相关数据的集合。
现将学生的成绩存储在education_management.mdb数据库的score表中,请编写一个数据库程序,实现录入学生成绩、自动计算成绩和学分、查询学生成绩的功能。
score表中数据如下:
学号课程编号课程名称学分平时成绩实验成绩卷面成绩综合成绩实得学分
01A01大学物理3667882
02B03高等数学478-190
01B03高等数学445-188
02C01VF3657666
综合成绩、学分由程序根据条件自动运算。
综合成绩的计算:
如果本课程的实验成绩为-1,则表示无实验,综合成绩=平时成绩*30%+卷面成绩*70%;如果实验成绩不为-1,表示本课程有实验,综合成绩=平时成绩*15%+实验成绩*.15%+卷面成绩*70%。
实得学分的计算:
采用等级学分制,综合成绩在90-100之间,应得学分=学分*100%;综合成绩在80-90之间,应得学分=学分*80%;综合成绩在70-80之间,应得学分=学分*75%;综合成绩在60-70之间,应得学分=学分*60%;综合成绩在60以下,应得学分=学分*0%。
二、课题要求
基本要求:
1.熟悉java的GUI设计及基本组件和布局;
2.熟悉事件处理机制;
3.完成学生成绩录入、自动计算成绩和学分、查询功能;
扩展要求:
1.采用客户端/服务器端模式;
2.增加事务处理。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
4
2.熟悉基本组件及布局
6
3.熟悉事件处理机制
4
4熟悉数据库SQL语句及前后台连接程序设计
6
5.小组分工及讨论
4
6.资料搜集与整理
4
7.编写程序
20
8.调试及测试
18
9.写总结报告
8
10.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目11:
日历
一、课题描述:
在图像用户界面中,用户输入年份、月份,自动输出对应的日历。
如下图所示:
二、课题要求
基本要求:
1.熟悉java的GUI设计及基本组件和布局;
2.熟悉事件处理机制;
3.完成日历输出,并注意格式规范:
扩展要求:
1.采用客户端/服务器端模式。
2.添加一个时钟。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
6
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
20
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
题目12:
画图
一、课题描述:
在图像用户界面中,用户在菜单中选择常见数学函数图形,如:
y=sinx,y=x2,y=lnx等。
如图所示画出正弦函数:
二、课题要求
基本要求:
1.熟悉java的GUI设计及基本组件和布局;
2.熟悉菜单及事件处理;
3.熟悉使用绘图类;
扩展要求:
1.添加一个菜单项“绘制线段”,在内容窗格添加一个画布Canvas,可以在这个画布上通过鼠标拖放动作来画线条。
三、考核及报告要求
1.考核
根据学生平时的上机出勤情况、为上机所作的准备情况、上机时的表现、程序的完成情况、报告的完成情况、验收答辩时的表现等综合打分。
等级为:
优秀、良好、中等、及格、不及格。
2.报告要求
报告封面见附录1,报告书写要求见附录2。
四、课题任务分解及学时安排
课题任务分解(课题内容细化)
学时安排
1.熟悉GUI设计原理
6
2.熟悉基本组件及布局
8
3.熟悉事件处理机制
8
4.小组分工及讨论
4
5.资料搜集与整理
4
6.编写程序
20
7.调试及测试
18
8.写总结报告
8
9.验收与答辩
4
主要仪器设备
硬件:
微型计算机。
软件:
jdk1.5以上,Eclipse3.2以上或JCreator或其他集成开发环境。
附录1
程序设计报告
(/学年第学期)
题目:
XXXXXXXXXXXXXXX
专业
组长学号姓名
组员学号姓名
指导教师
指导单位
日期年月日
成员分工
组长()
组员()
组员()
评分细则
评分项
优秀
良好
中等
差
遵守机房规章制度
上机时的表现
学习态度
程序准备情况
程序设计能力
团队合作精神
课题功能实现情况
算法设计合理性
用户界面设计
报告书写认真程度
内容详实程度
文字表达熟练程度
回答问题准确度
简短评语
教师签名:
年月日
评分等级
备注
评分等级共五种:
优秀、良好、中等、及格、不及格
附录2:
报告书写格式
XXXXXXXXXXXXXXX
(题目格式:
宋体,三号,加粗,居中对齐)
一、课题内容和要求(标题格式:
宋体,四号,加粗,两端对齐,下同)
写清课题内容、要求,以及对课题的理解。
中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0。
二、需求分析
对所要解决的问题作详细分析,进一步明确要完成的任务,以及如何完成,预期效果等。
文中的
(1)、
(2)、(3)等格式必须统一为中文括号或者英文括号。
中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0。
报告中所有的图必须统一编号,图必须有名称,图形、图名称必须居中;图形中的所有框图、线条必须“组合”成为一个整体;(图形必须嵌入到文字当中,不得浮于文字上方;严禁拷贝样稿中的图形,一经发现,均以不及格计。
三、概要设计
1.主要功能的流程图
二级标题格式:
宋体,小四号,不加粗,两端对齐,不缩进,下同
2.主要类及类之间的关系的UML图
中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0
四、源程序代码
写出程序中主要功能代码及相关注释
源代码格式:
TimesNewRoman字体,大小为五号,单倍行距,首行缩进2字符,段前段后距为0
五、测试数据及其结果分析
详细写清各功能的测试数据结果及结果分析。
此部分如采用截图方式,图形也必须编号、居中排版,中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0。
六、调试过程中的问题
中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0
七、课程设计总结
中文字体:
宋体,英文字体:
TimesNewRoman,小四号,不加粗,两端对齐,1.5倍行距,首行缩进2字符,段前段后距为0
《程序设计(上机)》材料提交
每个小组建一个目录,以组号_题目命名,如:
第03小组_学生管理系统,组号为两位数,不足前面补0。
该目录中包含:
v报告电子版一份,以程序设计_组长学号后两位_组员学号后两位_组员学号后两位.doc命名,如:
程序设计_01_02_03.doc。
为兼容性起见,要求学生提交doc版,而非wps版。
v源程序文件一份,以课题名命名,如:
学生管理系统.java。
v数据文件一份,按实际需要命名。
v其他维持代码正常运行所需要的文件,按实际需要命名。
v如教师要求,需要学生提交答辩PPT。
其它任何材料,只要任课教师觉得比较有意义。