Java课程设计选题_第1页
Java课程设计选题_第2页
Java课程设计选题_第3页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、作者:Pan Hon glia ng仅供个人学习Java课程设计选题Java课程设计说明本次课程设计的目的是通过课程设计的各个项目的综合训练,培养学生实际分析问题、编程和动手能力,提高学生的综合素质。本课程设计尝试使用一些较生 动的设计项目,激发学生的学习兴趣,引导学生主动学习,正确理解和接受需要 重点掌握的知识点。【课程设计步骤】1、分析项目要求每个课程设计项目都有其相关的设计要求, 其中对项目实现的功能做了详细 定义。如果某些知识面掌握的不是很好,可以再返回去重新熟悉与掌握。2、自学新知识每个课程设计项目都涉及一些新的知识面(老师没有在课堂上讲解的内容) 在开始设计前,首先要查阅相关资料,

2、学习和掌握项目中涉及的新知识,提 高自学能力。3、界面设计本次课程设计都是图形界面程序,所以在实现程序功能前,可以先完成图形 界面设计(建议采用swing组件或第三方swt组件)。在部分项目运行效果示 例中,抓取了运行结果界面。项目图形界面所涉及了容器、组件、布局知识, 在设计图形界面前,可以再回顾下以上知识(建议采用较智能的开发工具如: eclipse Jbuilder 等)。4、项目功能实现每种功能其实就是相应控件的响应事件,所以要根据课程设计要求把各种功 能转换成相应组件的响应事件。如动作事件(ActionEvent )、键盘事件(KeyEvent)、鼠标事件(MouseEvent)焦点

3、事件(FocusEvent)b对于比较复杂 的功能,先要设计该功能实现的算法和程序流程图,然后再用程序语句去实 现。5、项目测试与扩展项目程序设计完以后,运行该项目,一一测试所有项目功能,如有不合要求 的话,重新修改程序以达到项目要求。如有时间的话,可以在项目要求的基 础上扩展创新一些功能,根据其创新情况可以给予适当的加分。【课程设计要求】1)选题要求:本次课程设计所提供的课设题目,每人选择一个题目。选题分三种类型:普通题、提高题和挑战题,每种题型的起步分分别为:中、 良和优,如在该题型中选题完成良好的可以相应提高分数等级。如课设能达优的同学必须在课设上机安排时间内参加答辩。2)界面要求:尽量

4、使用swing包实现图形界面,要符合日常软件使用规范来设计菜单和界 面。如果无法实现图形界面,则在命令行方式下也需要提供菜单,方便用户操作。3)代码要求:标识符命名遵循java命名规范。能够考虑各种异常处理,注重提高程序运行效率。4)提交内容:全部源代码。课程设计报告注:课程设计报告严格按照老师给的java课程设计报告书 模版要求撰写,课设报告要求1520页(不包含代码)。普通题题目计算器设计内容设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算、设计要求设计的计算器应用程序可以完成家法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。学习要点本程序主要练习

5、使用布局管理器设计一个计算器的界面,并练习使用事件监听器 处理数据的输入,并完成相关的计算。设计思路 本应用程序继承自框架类(Frame),此程序使用Frame布局管理器BorderLayout,将单行文本框加入到"North "区域,包含各种按钮的面板Panel p加入到"Center"区域。包含各种按钮的面板 Panel p采用4行5列的网格布局,然后将数字按钮和运算符按钮以及 控制按钮添加到面板中。同时注册按钮事件监听器。如:Butt on b=new Butt on();b.addActionListener(事件监听器);事件监听器中的事件处理

6、方法void actionPeformed(ActionEvent evt)完成主要的按钮事件的处理。事件处理分以下几种情况:数字按钮事件(”0”,”1”,”2”,”9”)、运算符按钮事件(” + ”,” “ ”* ”,”/”,”)、正负号按钮事件(”+/-、小数点按钮事件(”)、等 号按钮事件(”=”)、求倒按钮事件(”1/x”)、退格按钮事件(”退格”)、清楚按钮事件(C”)。 在事件处理。触发按钮事件时,要进一步分析,是重新开始计算时触发的按钮事件还是计算中间触发的按 钮事件。计算器完成的是一个数学表达式,如:3+ 2,所以可以采用一个链表(LinkedList类)来存储数字或字符,如

7、3,+,2分别存储在链表中,最后运算时,可以一一取出来进行运算。本应用程序中的数字按钮和运算符按钮可以分别定义以下两个类的对象组件数字按钮NumberButton类如下:import java.awt.*;import java.awt.eve nt.*;import javax.swi ng.*;public class NumberButt on exte nds Butt onint nu mber;public NumberButt on (i nt nu mber)super(""+number);this .nu mber =nu mber;setForegro

8、 un d(Color.blue);public int getNumber()retur n nu mber;运算符按钮OperationButton类如下import java.awt.*;import java.awt.eve nt.*;import javax.swi ng.*;public class Operati on Butt on exte nds Butt onString运算符号;public Operation Button(String s)super(s);运算符号=s;setForegro un d(Color.red);public String get 运算符

9、号()return运算符号;相关学习资料LinkedList 类:LinkedList类在Java标准类库的java.util包定义,它提供域数组类似的服务,包括可以插入 或删除元素。与数组不同的是,LinkList对象可以根据需要,动态地改变大小。LinkList对象中存储的是对 Object类的一系列引用,对任何类型对象的引用都可以被添加倒LinkList对象中。LinkedList类中有以下方法public LinkedList() / 构造方法public Object getFirst() /返回链表中的第一个元素public Object getLast()/返回链表中的最后一个元

10、素public Object removeFirst() 删除并返回第一个链表元素public Object removeLast()删除并返回最后一个链表元素public void addFirst(Object o) /插入一个元素在为链表的第一个元素public void addLast(Object o) /插入一个元素为链表的最后一个元素public boolean contains(Object o) / 是否存在该元素public int size() /返回链表元素个数public boolean add(Object o) / 添加元素 opublic boolean rem

11、ove(Object o)/ 删除元素 opublic boolean addAII(Collection c) / 添加一个对象集cpublic void clear() /清除列表中的所有元素public Object get(intindex)/返回指定位置(index)的链表元素public Object set(int index, Object element) 设定指定位置 (index)的链表元素为元素 eleme ntpublic void add(int index, Object element) / 在链表特定位置(index)上插入链表元素public Object

12、remove(int index)/ 删除指定位置(index)上的链表元素下面举例应用 LinkedList类import java.awt.*;import java.awt.eve nt.*;import java.util.L in kedList;public class UseL in kedList exte nds FramePublic static void main(String args)String opertation1= + ”,”-:”*” ;String ipe0,ope1,ope2,ope3,ope4;Int n;Lin kedListlist1;For(i

13、nt I=0;I<opertation.length;I+)list1.add(opertati on i);ope0=(Stri ng)list1.getFirst();ope1=(Stri ng)list1.get(1);ope4=(Stri ng)list1.getLast();Iist1.set(2,” & ”);ope2=(Stri ng)list1.get(2);list1.remove( “");list1.removeLast();n=list1.size();System.out.println(链表中一共有"+ n+"元素”);S

14、ystem.out.println( 6pe0 ope4 分另U为 ”+ ope0+ope1+ope2+ope3+ope4);运算结果为:3+ &运行效果示例:题目简单投票管理系统设计要求设计一个如图1所示的投票管理系统界面,要求输入候选人名单后,点击确认按钮实现使用选择框代表候选人,计选择框的名字就是候选人的名字。点击取消按钮候选人输入框为空, 重新输入候选人名单。选中候选人的选择框时,表示给该候选人投一票。点击确定按钮时表 示产生一张选票。点击刷新按钮回到程序的初始界面重新设置候选人。根据选择框的状态变化统计出候选人的最后得票数,并可按票选取多少点击排序按钮对候选人进行排序。(其中

15、,最多从候选人中选取3人,如果一张选票选取多于3人,该票就作废票处理。如果一个也没投票,就作弃权处理。程序能显示一共统计了多少选票,并能统计出废票和弃权票的票数。学习要点本程序主要学习窗口的布局以及按钮事件的触发。设计思路Checkbox checkbox定义几个类变量来记录投票相关记录如:/选择框数组,代表候选人TextField perso nV ote/文本条数组,显示每个人的得票情况int cou nt/记录每个人的得票数int totalVote=0,/ 总票数in t peopleNumber=0;/ 候选人个数int有效人数=3,废票数=0,弃权票数=0;在输入候选人名单时是输入

16、一串名字,所以要从这一串名字中单个的提取出来并统计出候选人个数,在完成这项功能时要用到StringTokenizer类。点击确认按钮后,根据候选人个数添加单选按钮,并以候选人名字作为单选按钮的标签名。然后通过确定按钮事件分别给以上定义的各变量赋值。把结果显示出来,同时可以根据 peopleNumber的值对各候选人文本框排 序,即调整候选人文本框中的内容。相关学习资料StringTokenizer 类有时我们需要分析字符串并将字符串分解成可被独立使用的单词,这些单词叫做语言符号。例如,对于字符串 We are Students如果我们把空格作为该字符串的分隔符,那么该字符串有3个单词(语言符号

17、)。而对于字符串 WE, are,Student,如果我们把逗号作为了该字符串的分 隔符,那么该字符串有3个单词(语音符号)。当我们分析一个字符串并将字符串分解成可别独立使用的单词时,可以使用java.util包中的StringTokenizer类,改类有两个常用的构造方法:StringTokenizer ( String s)为字符串s构造一个分析器。使用默认的分隔符集合,即空格符(若干个空格被看作一个空格)、换行符、回车符、Tab符、进纸符。StringTokenizer ( String sString delim )为字符串 s构造一个分析器。参数delim中的字符被作为分隔符。例如:

18、 Strin gToke nlizer fenxi=new Strin gToke ni zer( We are stude nt”; Strin gToke nlizer fenxi=new Strin gToke ni zer( We,are;stude nt'',”;我们把一个StringTokenzier对象作一个字符串分析器。一个分析器可以使用nextToken()方法逐个获取字符串中的语言符号(单词),每当调用nextToken ()时,都将在字符串中活得下一个语言符号。通常用while循环来逐个获取语言符号,为了控制循环,我们可以使用StringTokenizer

19、类中的hasMoreTokens ()方法,只要字符串中还有语言符号,该方法就返 回true,否则返回falseo另外我们还可以调用countTokens()方法得到字符串一共有多少个语言付号。运行效果示例题目:小学生数学练习题目自动生成系统【设计要求】编写一个能够自动生成小学生数学练习题目的程序。设计一个程序,能够根据用户的选择生成“ 10以内加法”、“ 10以内减法”、“20以内加法”、“20以内减法”、“100以内加法”、“ 100以内减法”、“100以内乘法”、“100以内除法” 8种类型的题目,要求每个题目能够随 机生成,并符合以下要求:1) 10以内加法的得数在不大于10的范围内;

20、2) 20以内加法的得数在不大于20的范围内;3) 100以内加法的得数在不大于100的范围内;4) 10以内减法的两个运算数在不大于10的范围内并且差为非负数;5) 20以内减法的两个运算数在不大于20的范围内并且差为非负数;6) 100以内减法的两个运算数在不大于 100的范围内并且差为非负数;7) 100以内乘法的得数在不大于 100的范围内;8) 100以内除法的两个运算数在不大于100的范围内并且被除数应该是除数的整数倍;要求程序具备以下功能:根据用户对“题目类型”的选择,在按下“出题”按钮之后,每次 显示20个相应类型的题目,用户可以在界面上填写计算结果;答题完成之后,当用户按下“

21、评卷”按钮时,根据用户的答题结果,在界面上可以显示红色的“V”或“X”符号,以作为对用户的答题结果的评判。当用户按下“答案”按钮时,在界面上显示正确的运算结果。【输入/输出要求】输入要求:用户能够在界面上输入题目的计算结果;输出要求:程序可以在界面上显示20个用户所需的类型的题目,以红色的“V”或“X”符号显示对用户计算结果的评判结果,以及所给出的题目的正确答案。题目:华容道-一个传统的智利游戏【设计要求】编写一个按钮的子类,使用该子类创建的对象代表华容道中的人物。通过焦点事件控制人物颜色,当人物获得焦点时颜色为蓝色,当失去焦点时颜色为灰色。通过键盘事件和鼠标事件来实现曹操、关羽等人物的移动。

22、当人物上发生鼠标事件或键盘事件时,如果鼠标指针的位置是在人物的下方(也就是组件的下半部分)或按下键盘的“键,该人物向下移动。向 左、向右和向上的移动原理类似。学习要点本程序主要练习使用布局管理器设计一个华容道游戏界面,并练习使用事件监听器(鼠标事件、键盘事件和焦点事件)实现按钮的移动。设计思路首先是界面设计,该界面主要包括十个人物按钮(马、曹操、关羽等)以及旁边的四个边框按钮和重新开始按钮。对于人物按钮,我们可以创建Butt on按钮的子类,在该类中定义按钮的一些新的属性和焦点事件监听器,女口:按钮的标签名、按钮的颜色、按钮的排号(如这里有十个人物按钮,从1排到十,在程序中可以依靠这个属性区分

23、人物按钮)、按钮颜色、按钮获得或失去焦点事件。同时在设计该界面时要考虑到各个按钮的位置、大小等情况。在这给出了各按钮的位置和大小参数:(其中Person为继承Butt on按钮的人物按钮类)String name="曹操","关羽","张","刘","马","许","兵","兵","兵","兵"for(i nt i=0;i <n ameen gth;i+)pers on i=new Pers

24、 on (i, namei);pers on i.addKeyListe ner(this);pers on i.addMouseListe ner(this);/pers on i.addFocusListe ner(new Person)add(pers on i);perso n0.setBou nds(104,54,100,100);perso n1.setBou nds(104,154,100,50);perso n2.setBou nds(54,154,50,100);perso n3.setBou nds(204,154,50,100);perso n4.setBou nds(5

25、4,54,50,100);pers on 5.setBou nds(204,54,50,100);pers on 6.setBou nds(54,254,50,50);pers on 7.setBou nds(204,254,50,50);perso n8.setBou nds(104,204,50,50);pers on 9.setBou nds(154,204,50,50);四个边框按钮的位置和大小参数为:left.setBou nds(49,49,5,260);right.setBou nds(254,49,5,260);above.setBou nds(49,49,210,5);bel

26、ow.setBou nds(49,304,210,5);其次我们是对界面上的各人物按钮添加相应的相应事件(鼠标事件、键盘事件),通过这两种事件去完成界面上各人物按钮的移动。对重新开始按钮定义动作事件(ActionEvent )完成界面初始化功能(也就是各人物按钮重新归位)。相关学习资料该程序主要涉及到鼠标事件和键盘事件及焦点事件三个方面的新知识。1、触发焦点事件组件可以触发焦点事件。组件可以使用public void addFocusListe ner(FocusListe ner Liste ner)增加焦点事件监视器如:button1.addFocusListener(事件监听器)当组件具

27、有焦点监视器后,如果组件从无输入焦点变成有输入焦点或从有输入焦点到无输入焦点都会触发FocusEvent事件。创建监视器的类必须要实现FocusListener接口,该接口有两个方法:public void focusGa in ed(FocusEve nt e)/ 获得焦点触发public void focusLost(FocusEve nt e)/ 失去焦点触发当组件从无输入焦点变成有输入焦点并触发FocusEvent事件时,监视器调用类实现的接口方法focusGained(FocusEvent e);当组件从有输入焦点变成无输入焦点并触发 FocusEvent事件时,监视器调用类实现方法

28、focusLost(FocusEvent e)。方法 public Boolean requestFocusInwindow()方法可以获得输入焦点:如 Butt on 1.requestFocus Inwin dow()2、鼠标事件组件是可以触发鼠标事件的事件源。女口:鼠标指针进入组件,退出、停留组件上方单击鼠标、拖动鼠标、按下、释放、移动。鼠标事件的类型是MouseEvent,即组件触发鼠标时,MouseEvent类自动创建一个事件对象。Java分别使用 MouseListener接口与 MouseMotionListener接口来处理鼠标事件。MouseListener接口可以处理5种鼠

29、标事件:单击、按下、释放、进入和退出。MouseMotionListener接口可以处理 2种鼠标事件:拖动、移动。3、键盘事件当按下、释放或敲击键盘上一个键时就发生了键盘事件,如:当一个组件处于激活状态时(获得焦点),敲击键盘上一个键就导致了这个组件发生了键盘事件。事件源使用addKeyListener方法获得监视器。KeyEvent为键盘事件的类型,KeyListener是事件监视器实现的接口,其中有三种相应事件:按键、释放键、按下和释放的组合事件。Public void KeyPressed(KeyEve nt e)Public void KeyTyped(KeyEve nt e)Pub

30、lic void KeyReleased(KeyEve nt e)用 KeyEvent 类的 public int getKeycode()方法和 public char getKeychar()判断哪个键被按 下、敲击或释放。如:public void keyPressed(KeyEve nt e)Person man=(Pers on )e.getSource ();/返回事件源 if(e.getKeyCode()=KeyEve nt.VK_DOWN)/ 判断是否按下了向下箭头goDow n(man);if(e.getKeyCode()=KeyEve nt.VK_UP)/ 判断是否按下了向

31、下箭头goUp(ma n);if(e.getKeyCode()=KeyEve nt.VK_LEFT)/ 判断是否按下了向下箭头goLeft(ma n);if(e.getKeyCode()=KeyEve nt.VK_RIGHT)/ 判断是否按下了向下箭头goRight(ma n);运行效果示例题目 用图形界面实现P208页,过桥问题设计要求:1.用多线程技术实现多人过独木桥;2. 模拟不同速度过桥;3. 用面向对象方法设计程序。题目编写一个记事本程序设计要求1、用图形用户界面实现。2、能实现编辑、保存、另存为、查找替换等功能。3、提示:使用文件输入输出流题目电子英汉词典设计要求1. 用图形用户界

32、面实现。2. 能够编辑词典库中的信息3. 能够实现英译汉,汉译英。(要考虑一词多义)题目加密与解密设计要求1. 采用图形用户界面2. 给定任意一个文本文件,进行加密,生成另一个文件3. 对加密后的文件还原。提高题题目:标准化考试系统内容:本系统可以进行任何标准化考试,具有选择试题,查看得分、考试计时等功能。 设计要求:4. 用户可以选择一套标准化考试试题。5. 每套试题的考试用时由试题文件(.txt)给出。6. 开始读取试题后,计时器开始计时,用户提交答案后,可以读取下一道题目。7. 一个提示栏显示所剩余的考试时间,当规定时间用尽后,用户将不能再读取任何题目。8. 为了增加模拟考试练习的灵活性

33、,用户也可以选择暂停计时。9. 用户答完一个题目后,可以查看该题目的正确答案和目前的分数。 运行效果图:题目:排球比赛计分系统【设计要求】编写一个能够对排球比赛实时统计比分和显示比分的程序。排球竞赛规则规定:排球竞赛为五局三胜制,每局比赛中得够25分并且领先对方2分以上的一方将获得一局胜利,先获得三局胜利的一方将 获得比赛的胜利。若比赛中出现 24: 24的比分,则一方必须领先对 方2分方可结束一局。若双方前四局的比分为 2: 2,则将进行第五 局的比赛,第五局比赛中得够15分并且领先对方2分以上的一方将 获得胜利。若比赛中出现14: 14的比分,则一方必须领先对方 2分 方可结束比赛。设计一

34、个程序,分别用两个按钮来输入比赛一方的得分。根据比 赛进展,用两个固定的按钮输入比赛双方的得分,如果一方得分,则 按下对应的按钮一次,GUI界面上的分数将增加1分。当完成一局比 赛时,程序自动将比赛得分清零,并且相应地将获得本局胜利一方的 局分增加1分。若一方获得三局比赛的胜利,则程序自动显示获胜一 方的名称。要求程序具备以下功能:可以实时输入和显示比赛双方的比分和 局分,可以存储比赛的得分过程,并且可以调用已经存储的比赛得分 记录。【输入/输出要求】输入要求:在程序启动之后输入参加比赛的两只球队的名称和队 旗画面图像。按照比赛进展,实时输入比赛得分。输出要求:程序运行时,可以在 GUI界面上

35、显示球队的名称和队 旗、双方的当前赛局的比分、双方的局分。【数据管理能力要求】比赛结束之后,可以将整个比赛的整个得分过程存储到文件中, 以供回顾使用题目:Hannoi塔设计内容设计GUI界面的Hannoi塔,用户可以通过拖动鼠标移动各个塔上的盘子,程序也可以自 动演示盘子的移动过程。设计要求1. 有三个表示塔的对象, 分别命名为A、B和Co A塔上有若干个盘子, 盘子的大小不等, 并按着大小顺序依次摆放在 A塔上,大盘在下,小盘在上。用户可以用鼠标拖动盘子,把A塔上的盘子全部移动到另外两个塔中的任何一个塔上。要求每次只能移动一个盘 子,在任何时候不允许大盘压在小盘的上面。2. 用户也可以选择让

36、程序自动演示。选择自动演示后,程序将以动画形式演示把 A塔上的 盘子全部移到C塔的过程,并将移动过程以文本形式显示在一个文本区中。运行效果图题目学籍管理系统设计内容设计基于文件结构的学籍管理系统。设计要求1录入学生基本信息的功能2修改学生基本信息的功能3查询学生基本信息的功能4删除学生基本信息的功能运行结果图题目制作一个图形编辑系统设计要求:1、能用拖橡皮筋的手法绘制各类图形(直线、椭圆、矩形、文字)2、支持画笔颜色、文字大小设置;3、能将画面中的所有图形存储到文件中;4、能从文件读取图形进行增补;5、米用对话框获取图形文件名。6、思考如何利用鼠标选取图形,删除。题目图书信息管理系统设计要求:

37、1. 使用图形用户界面2. 用数据库建立1或2个图书信息表。(不限使用哪种数据库)3. 能连接数据库并实现查询、增、删、改等功能。题目ATM柜员机模拟系统设计要求:使用图形用户界面。需求:当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:1、查询余额:初始余额为10000元2、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不 允许透支。3、ATM存款:不能出现负存款。4、修改密码:新密码长度不小于 6位,不允许出现6位完全相同的情况,只有 旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

38、题目一个简单的万年历功能要求:1. 能够显示实现1800-2100年的日期,包括公历、农历、星期、二十四节气。2. 能够按照月份格式显示,或按照星期格式显示。3. 能够显示系统时间。4. 能够设置闹钟。5. 能够查询若干国际大城市(分布在不同时区)的时间。题目学生成绩管理信息系统数据库要求:1. 建立的数据库中包含如下信息:学生学号、姓名、班级,语文、数学、英语 成绩。2. 至少要有5个班级,每个班级要有10名以上学生。3. 使用.txt格式文本表示各种表。功能需求:1. 能够实现根据以下关键字查询:学生姓名、学号、班级、课程名称。2. 能够实现按照单科成绩、总成绩、平均成绩、学号排序。3.

39、能够实现学生信息的插入、删除和修改。4. 能够查询每个课程的最高分、最低分及相应学生姓名、班级和学号。5. 能够查询每个班级某门课程的优秀率(90分及以上)、不及格率,并进行排序。题目聊天小程序设计要求4、使用图形用户界面。5、能实现一个聊天室中多人聊天。6 可以两人私聊。7、提示:使用socket通信挑战题题目:记忆测试系统设计内容:记忆测试系统通过回忆法测试记忆,分为初级、中级、高级三个级别,并通过记忆榜存储 每个级别的成绩。设计要求:1. 单击“记忆测试”菜单可以选择初级/中级/高级,也可以查看初级记忆榜 /中级记忆榜或 高级记忆榜。2. 选择级别后,将显示相应级别的测试区域。测试区域由

40、若干个方块组成,每个方块都有 一个图标,但该图标默认情况下不可见。用鼠标单击测试区中的任何一个方块,则计时 器开始启动,同时该方块上的图标将显示出来。对于初级级别,用户必须用鼠标连续单击出6个图标相同的方块,也就是说,如果用户已经用鼠标连续单击出n ( n<6)个图标相同的方块,单击另一个房块时,如果该方块的图标和上一个相同,那么该方块的图标 和前n次单击出的方块的图标仍然可见,否则,前n次单击出的方块的图标都变为不可见。3. 连续单击出该级别所要求的若干个图彪相同的方块后,将显示保存成绩对话框,成绩按 所用时间排序。用户可以通过该对话框选择是否将自己的成绩保存到成绩表中。运行效果图:题

41、目超市收银系统设计要求:使用图形用户界面。需求:由收银员输入顾客的会员卡卡号(若有卡)、所购商品的货号等。从数据库中取 出有关价格信息,再把这些信息返回给收银台。同时把该收银台的销售总量和有 关种类商品的剩余量以及该持卡顾客的消费情况交数据库存储以供查询。另外,对没有卡的消费情况不记录该顾客的消费情况等个人信息。 如果一个未持 卡顾客一次购物满200元,可为其发放一张会员卡,以后在该商场购物可向 9 折优惠。题目算法演示程序功能要求:1. 选择一个算法(提供选择见下),利用各种方法(图形、动画等)演示算法的 演示过程。2. 可以进行手动演示,也可以自动步进式演示。3. 允许用户设置算法的各个输入参数,以及自动步进式演示中的时间间隔。4. 不同的算法输入要求见下。参考算法:1. 最小生成树算法:Prim算法、Kruskal算法。允许以下方式输入一个图形:绘 制图形、输入邻接矩阵、输入边及其关联的顶点。要求在图形方式下进行演示算 法执行步骤。2. 单源最短路算法:Dijkstra算法。允许以下方式输入一个图形:绘制图形、输 入邻接矩阵、输入边及其关联的顶点。要求在图形方式下进行演示算法执行步骤。3. 最优编码算法:Huffman编码算法。允许用户输入一段英文文字,或者打开- 个txt文档

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论