11级《面向对象程序设计课程设计》任务书
《面向对象程序设计》课程设计

《面向对象程序设计》课程设计在当今数字化的时代,计算机程序设计的重要性日益凸显。
而面向对象程序设计作为一种重要的编程范式,在软件开发中发挥着关键作用。
本次课程设计旨在深入探究面向对象程序设计的原理、方法和应用,培养学生的编程思维和实践能力。
一、课程目标1、掌握面向对象的基本概念,如类、对象、封装、继承和多态等。
2、学会使用面向对象的方法进行问题分析和程序设计。
3、能够运用常见的编程语言(如 Java、C++等)实现面向对象的程序。
4、培养团队合作精神和解决实际问题的能力。
二、课程内容1、面向对象的基本概念类与对象的定义和关系封装的实现和意义继承的概念和分类(单继承、多继承)多态的表现形式(重载、覆盖)2、面向对象的设计原则单一职责原则开放封闭原则里氏替换原则依赖倒置原则接口隔离原则迪米特法则3、常用的设计模式创建型模式(工厂方法模式、抽象工厂模式、单例模式等)结构型模式(适配器模式、桥接模式、装饰器模式等)行为型模式(策略模式、责任链模式、观察者模式等)4、编程语言的实践选择一种主流的编程语言(如 Java 或 C++),进行实际的编程练习。
完成从简单的控制台应用程序到复杂的图形用户界面应用程序的开发。
三、课程实施1、理论教学通过课堂讲解、案例分析和讨论,让学生理解面向对象程序设计的基本概念和原理。
2、实践教学安排实验课程,让学生在实际操作中掌握编程语言的使用和面向对象程序的开发。
布置课程设计项目,要求学生以小组形式完成一个具有一定规模和复杂度的应用程序。
3、教学资源提供相关的教材、参考书籍和在线资源,方便学生自主学习。
利用在线教学平台,发布教学资料、作业和答疑。
四、课程考核1、平时成绩包括考勤、课堂表现、作业完成情况等。
2、实验成绩根据实验报告和实验项目的完成情况进行评定。
3、课程设计成绩从项目的需求分析、设计方案、代码实现、测试结果和团队协作等方面进行综合评价。
五、课程设计项目示例以“学生管理系统”为例,介绍面向对象程序设计的应用。
《VC++面向对象程序设计》课程设计任务书

《VC++面向对象程序设计》课程设计任务书一、课程设计目的《VC++面向对象程序设计》是计算机相关专业的一门重要专业基础课。
其实践性、应用性很强。
实践教学环节是必不可少的一个重要环节。
VC++程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
通过课程设计,可以使学生更进一步地理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题,从而达到锻炼学生理论与实践相结合的能力。
本课程设计以设计综合性实验为主,培养学生灵活利用所学综合知识,提高程序设计的能力;同时,也培养学生利用C++语言进行编程和调试程序的能力,使学生能够具有编写较复杂程序的能力。
通过此次课程设计,主要达到以下目的:(1)巩固和加深对VC++面向对象程序设计基本知识的理解,提高综合运用VC++理论的能力。
(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。
(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
二、VC++课程设计要求(一)基本要求1、每组2人完成课程设计。
(可以选择前10题中任意2题(每人1题)或者2人共同完成10-20题中任意1题)。
其中,设计报告中要能体现明确分工,并每人完成不同的功能模块,对于关键代码或者关键模块不允许出现重复内容。
2、独立思考,独立完成课程设计。
课程设计中各任务的设计和调试要求独立完成,遇到问题可以相互讨论,但不可以拷贝。
3、做好上机准备。
每次上机实验之前,要事先编制好准备调试的程序,认真想好调试步骤和相关环境的设置方法,准备好有关文档。
4.按照课程设计的具体要求建立功能模块。
对于具体模块要求按照如下几个方面内容认真完成:①需求分析:在该部分描述清楚模块的具体功能。
如果存在多个模块,则需要描述清楚每个模块的具体功能及相互之间的关联关系。
面向对象程序设计课程设计

面向对象程序设计课程设计设计说明书模拟机械时钟起止日期:2009年6 月8 日至2009年6 月16 日学生姓名胡海涛班级计算机072班学号07408100225成绩指导教师(签字)计算机与通信学院2009年6月16 日目录1、课程设计任务书····································2、课程设计报告······································3、附:部分源代码····································课程设计任务书2008 — 2009 学年第2 学期计算机与通信学院学院(系、部)计算机科学与技术专业计算机072班班级课程名称:C++面向对象程序设计设计题目:模拟机械时钟完成期限:自09 年 6 月8 日至09 年月16 日共 1 周指导教师(签字):年月日系(教研室)主任(签字):年月日课程设计报告院(系):计算机与通信学院专业:计算机科学与技术问题的解决方案为了显示出位图窗口首先得有一幅与外边框相切的位图,将其添加到资源后利用其ID 标识载入到一个CBitmap中,再自行定义一个函数产生一个区域供窗体显示。
信息与计算科学专业面向对象课程设计任务书(Word)

面向对象程序设计课程设计任务书1.1 面向对象课程设计目的通过课程是设计,进一步熟悉面向对象程序设计语言中类的概念、类的封装、继承的实现方式。
了解系统开发的需求分析、类层次设计、模块分解、编码测试、模块组装与整体调试的全过程,加深对面向对象程序设计的理解与面向对象程序开发环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。
1.2 课程设计结构及要求结构化程序设计使用的是功能化抽象,面向对象程序设计不仅能进行功能抽象,而且能进行数据抽象。
“对象”实际上是功能抽象和数据抽象的统一。
面向对象程序设计语言的“对象”是“类”的实例,课程设计的基础是设计类,所以类的有关概念是重点,尤其要抓住抽象、封装、继承和多态性等要素。
要求学生的课程设计中要涉及类、继承的使用。
类设计的重点是如何选择数据成员和成员函数。
成员函数设计的难点是选择函数类型及其参数传递方式。
数据类型及程序控制方式仍然是面向对象程序设计语言的基础;数组、指针、类和结构的使用方法是编程的核心技术。
学生学习时,常常避开多文件编程和使用文件,但这些要求是程序员必备的知识,因此课程设计中应加强这方面的训练。
课程设计结果:提交课程设计报告1.3课程设计题目本课程设计提供了4个设计题目,学生任意选作一题,独立完成。
可使用C++或JA V A 两种面向对象程序设计语言。
题目1:一个简单的算法演示程序(JA V A语言实现)功能要求:1. 选择一个算法(提供选择见下),利用各种方法(图形、动画等)演示算法的演示过程。
2. 可以进行手动演示,也可以自动步进式演示。
3. 允许用户设置算法的各个输入参数,以及自动步进式演示中的时间间隔。
4. 不同的算法输入要求见下。
界面要求:1. 尽量使用图形界面实现,要符合日常软件使用规范来设计菜单和界面。
2. 如果无法实现图形界面,则在命令行方式下也需要提供菜单,方便用户操作。
其他要求:1. 标识符命名遵循Windows命名规范。
《VC++面向对象程序设计》课程设计任务书

《VC++面向对象程序设计》课程设计任务书一、课程设计目的《VC++面向对象程序设计》是计算机相关专业的一门重要专业基础课。
其实践性、应用性很强。
实践教学环节是必不可少的一个重要环节。
VC++程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
通过课程设计,可以使学生更进一步地理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题,从而达到锻炼学生理论与实践相结合的能力。
本课程设计以设计综合性实验为主,培养学生灵活利用所学综合知识,提高程序设计的能力;同时,也培养学生利用C++语言进行编程和调试程序的能力,使学生能够具有编写较复杂程序的能力。
通过此次课程设计,主要达到以下目的:(1)巩固和加深对VC++面向对象程序设计基本知识的理解,提高综合运用VC++理论的能力。
(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。
(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
二、VC++课程设计要求(一)基本要求1、每组1人完成课程设计。
每人完成不同的功能模块,对于关键代码或者关键模块不允许出现重复内容。
2、独立思考,独立完成课程设计。
课程设计中各任务的设计和调试要求独立完成,遇到问题可以相互讨论,但不可以拷贝。
3、做好上机准备。
每次上机实验之前,要事先编制好准备调试的程序,认真想好调试步骤和相关环境的设置方法,准备好有关文档。
4.按照课程设计的具体要求建立功能模块。
对于具体模块要求按照如下几个方面内容认真完成:需求分析:在该部分描述清楚模块的具体功能。
如果存在多个模块,则需要描述清楚每个模块的具体功能及相互之间的关联关系。
②概要设计:在此部分对模块的算法设计进行说明(可以采用算法流程图进行描述,并附上该图的相关文字说明),每个程序中使用的存储结构设计说明(如果指定存储结构,请描述清楚该存储结构的定义)。
面向对象课程设计任务书3

河南城建学院《面向对象程序设计》课程设计任务书班级0844121专业软件工程课程名称面向对象程序设计指导教师苏靖枫周二强计算机科学与工程学院2013年6月《面向对象课程设计》任务书一、设计时间及地点1、时间:第17周2、地点:计算机系实验中心205机房、本班教室二、设计目的和要求本课程设计是在学习C++基本理论之后的实践教学环节。
该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。
要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。
学生通过课程设计在下述各方面得到锻炼:1.能根据实际问题的具体情况,结合C++的基本理论和基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。
2.提高程序设计和调试能力。
学生通过上机实习,验证自己设计的算法和程序的正确性。
学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改,进一步提高程序设计水平。
三、设计题目和内容1. 有理数运算问题描述:有理数是一个可以化为一个分数的数,例如2/3,533/920,-12/49都是有理数,而就为无理数。
在C++中,并没有预先定义有理数,需要时可以定义一个有理数类,将有理数的分子和分母分别存放在两个整型变量中。
对有理数的各种操作都可以用重载运算符来实现。
基本要求:定义并实现一个有理数类,通过重载运算符+、-、*、/对有理数进行算术运算,通过重载运算符==实现判定两个有理数是否相等。
写一个优化函数,它的作用是使有理数约去公分母,也即是使保存的有理数分子和分母之间没有公约数(除去1以外)。
此外,还要定义一个将有理数转换为实数的函数,再加上构造函数和有理数输出函数。
测试数据:在应用程序中,创建若干有理数对象,通过带参数的构造函数使得各有理数对象值各不相同,然后分别进行各类运算,输出运算结果,检验其正确性。
实现提示:设有两个有理数a/b和c/d,则有:(1)有理数相加分子=a*d+b*c;分母=b*d(2)有理数相减分子=a*d-b*c;分母=b*d(3)有理数相乘分子=a*c;分母=b*d(4)有理数相除分子=a*d;分母=b*c优化函数在创建有理数对象时应执行,在执行其它各种运算之后也需执行它,这样可保证所存储的有理数随时都是最优的。
自-面向对象分析与设计课程设计任务书
面向对象分析与设计课程设计任务书(本科)辽宁工程技术大学软件学院软件工程系一、课程设计目的和任务本课程设计是学生学习完《面向对象分析与设计》课程后,进行的一次全面的综合训练,通过课程设计,让学生更好地掌握UML建模原理及实现方法,加深对UML建模基础理论的理解,加强学生的动手能力。
二、课程设计基本要求本课程设计以IBM Rose 2007为建模工具,为待开发程序建立相应的系统建模。
通过该课程设计,使学生掌握UML在软件工程的重要作用:使学生系统地了解软件的开发中模型的建立方法与顺序,培养学生的系统需求分析,设计能力,并了解建模工具发展动向和趋势。
要求如下:1、要充分认识课程设计对培养自己的重要性,认真做好设计前地各项准备工作。
2、既要虚心接受老师的指导,又要充分发挥主观能动性。
结合课题,独立思考,努力钻研,勤于实践,用于创新。
3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。
4、课程设计期间,无故缺席按旷课处理;缺席时间达三分之一以上者,其成绩按不及格处理。
5、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。
三、课程设计内容本课程设计以为待开发系统建立系统模型为基础,以下给出若干系统的描述,请根据给出的系统的基本需求,经过详细需求分析和系统地总体设计与详细设计,画出以下几种模型图:用例图,类图,活动图,顺序图,状态图,构件图和部署图.(一)题目题目一、简易OA(办公自动化)系统随着网络的高速发展,网络OA系统逐渐受到关注。
一些大型企业集团(例如联想、海尔)证致力实现高层次的网络办公自动化,这将为他们节省大量的人力资源,节省大量的办公费用,大幅度提高办公效率。
开发网络办公系统的市场前景是广阔的。
大型企业需要高层次的网络办公自动化,他们往往会选择大型的软件公司合作开发,所需的开发费用和维护费用也是非常高昂的。
这些高昂的费用并非大多数中小企业能承受得起的。
面向对象程序设计课程设计报告书
面向对象程序设计课程设计报告书一、课程设计目的面向对象程序设计课程设计是对所学面向对象程序设计知识的综合运用和实践,旨在通过实际项目的开发,加深对面向对象编程思想的理解,提高编程技能和问题解决能力。
二、课程设计要求本次课程设计要求学生独立完成一个具有一定规模和复杂度的面向对象程序项目。
具体要求包括:1、运用面向对象的分析和设计方法,对项目进行需求分析和系统设计。
2、选择合适的编程语言和开发工具,实现项目的功能。
3、遵循良好的编程规范和代码风格,确保程序的可读性和可维护性。
4、对程序进行充分的测试,确保其稳定性和正确性。
三、课程设计题目及背景本次课程设计的题目为“学生成绩管理系统”。
随着学校规模的不断扩大,学生数量的不断增加,传统的手工管理学生成绩的方式已经无法满足需求。
因此,开发一个学生成绩管理系统,实现学生成绩的录入、查询、统计和分析等功能,具有重要的现实意义。
四、系统需求分析1、功能需求学生信息管理:包括学生基本信息的录入、修改、删除和查询。
课程信息管理:包括课程基本信息的录入、修改、删除和查询。
成绩录入:教师能够录入学生的课程成绩。
成绩查询:学生和教师能够查询学生的课程成绩。
成绩统计:能够统计学生的总成绩、平均成绩等。
成绩分析:能够对学生的成绩进行分析,如成绩分布、优秀率等。
2、性能需求系统响应时间要短,能够快速处理用户的请求。
系统要稳定可靠,能够长时间运行。
3、数据需求学生信息:包括学号、姓名、性别、年龄、班级等。
课程信息:包括课程编号、课程名称、学分等。
成绩信息:包括学号、课程编号、成绩等。
五、系统设计1、总体设计系统采用 C/S 架构,分为客户端和服务器端。
客户端负责与用户进行交互,服务器端负责数据的存储和处理。
系统分为学生信息管理模块、课程信息管理模块、成绩录入模块、成绩查询模块、成绩统计模块和成绩分析模块。
2、详细设计学生信息管理模块类设计:设计一个学生类(Student),包含学生的基本属性和操作方法,如设置和获取学生信息。
《VC 面向对象程序设计》课程设计任务书
《VC++面向对象程序设计》课程设计任务书一、课程设计目的《VC++面向对象程序设计》是计算机相关专业的一门重要专业基础课。
其实践性、应用性很强。
实践教学环节是必不可少的一个重要环节。
VC++程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
通过课程设计,可以使学生更进一步地理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题,从而达到锻炼学生理论与实践相结合的能力。
本课程设计以设计综合性实验为主,培养学生灵活利用所学综合知识,提高程序设计的能力;同时,也培养学生利用C++语言进行编程和调试程序的能力,使学生能够具有编写较复杂程序的能力。
通过此次课程设计,主要达到以下目的:巩固和加深对VC++面向对象程序设计基本知识的理解,提高综合运用VC++理论的能力。
使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。
使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
二、VC++课程设计要求基本要求1、每组2人完成课程设计。
或者2人共同完成10-20题中任意1题)。
其中,设计报告中要能体现明确分工,并每人完成不同的功能模块,对于关键代码或者关键模块不允许出现重复内容。
2、独立思考,独立完成课程设计。
课程设计中各任务的设计和调试要求独立完成,遇到问题可以相互讨论,但不可以拷贝。
3、做好上机准备。
每次上机实验之前,要事先编制好准备调试的程序,认真想好调试步骤和相关环境的设置方法,准备好有关文档。
4.按照课程设计的具体要求建立功能模块。
对于具体模块要求按照如下几个方面内容认真完成:需求分析:在该部分描述清楚模块的具体功能。
如果存在多个模块,则需要描述清楚每个模块的具体功能及相互之间的关联关系。
概要设计:在此部分对模块的算法设计进行说明,每个程序中使用的存储结构设计说明。
【精品】面向对象程序设计任务书1
9、JPEG画板及图像生成器
设计一个画图板,在画布区域上可以进行各种规则图形的绘制(如:线段、矩形、多边形、圆等),还可通过鼠标的拖动自由绘图。并将绘制的图形生成为jpeg格式的图像保存于硬盘中.
10、加密与解密
设计要求
1)采用图形用户界面
2)给定任意一个文本文件,进行加密,生成另一个文件。
3)对加密后的文件还原。
11、自定义题目:(对给定题目不感兴趣的,可自拟)
所设计系统的题目和具体功能自行确定,但要满足以下要求:
采用Java应用程序来完成系统(而不是Javaapplet).
要有一个主窗体,并含有菜单条和工具条。
其余窗体(如对话框等)至少3个。
3、课程设计期间要严格遵守学校纪律,按时上机,服务机房管理人员管理,不得无故旷课、迟到与早退,课程设计期间缺勤1/3以上者,成绩以不及格记。
三、成绩评定:
通过设计答辩等方式,结合学生的动手能力、独立分析解决问题的能力和创新精神,由验收教师根据考勤、设计说明书质量、答辩表现以及学习态度等综合评定设计成绩。
一、设计目的:
Java课程设计是对所学面向对象课程的小结,是提高学生对所学知识综合应用能力的一种方式,是集中实践性环节之一。要求同学们对理论课中所学习到的知识综合运用,实现有一定规模的Java应用。
二、设计要求:
1、课程设计以每位同学学号末尾数据所对应题目编号即为设计的题目。
2、学生必须独立完成设计任务,严禁抄袭,一经发现,成绩以不及格计。
8、记忆测试系统
记忆测试系统是通过回忆法测试记忆能力,测试手段分为初级,中级和高级三个级别。记忆测试系统设计要求如下:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
11级C++语言程序设计课程设计任务书 (适应于11级软件工程2011221805-8,2011221809-12) 一、课程设计的目的与要求 1.教学目的 在《面向对象程序设计》课程理论与实验教学的基础上,根据软件工程的方法与流程,在相对集中的实训教学时间内,通过一个功能较完整的小型应用系统,复习与深入掌握面向对象的程序设计思想与技术方法。同时,作为整个实践教学体系一部分,系统培养学生采用面向对象的方法分析问题与解决问题的能力及团体组织与协作能力。 2.教学要求 从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求: 1)根据实现的功能,划分出合理的对象类,明确对象类间的关系。 2) 为每个对象类设计正确的域和方法,为每个方法设计合理的方法体。同时,为对象类及内部的域和方法运用正确的修饰符,如访问控制符等。 3)编程简练,程序功能齐全,能正确运行。 4)说明书、流程图要清楚,规范。 5)课题完成后必须按要求提交课程设计报告,格式规范,内容详实。
二、课程设计的内容与安排
1、题目安排 1. 有理数运算 问题描述 有理数是一个可以化为一个分数的数,例如2/3,533/920,-12/49都是有理数,而就为无理数。在C++中,并没有预先定义有理数,需要时可以定义一个有理数类,将有理数的分子和分母分别存放在两个整型变量中。对有理数的各种操作都可以用重载运算符来实现。 基本要求 定义并实现一个有理数类,通过重载运算符+、-、*、/对有理数进行算术运算,通过重载运算符==实现判定两个有理数是否相等。写一个优化函数,它的作用是使有理数约去公分母,也即是使保存的有理数分子和分母之间没有公约数(除去1以外)。此外,还要定义一个将有理数转换为实数的函数,再加上构造函数和有理数输出函数。 测试数据 在应用程序中,创建若干有理数对象,通过带参数的构造函数使得各有理数对象值各不相同,然后分别进行各类运算,输出运算结果,检验其正确性。 实现提示
2 设有两个有理数a/b和c/d,则有: (1)有理数相加 分子=a*d+b*c;分母=b*d (2)有理数相减 分子=a*d-b*c;分母=b*d (3)有理数相乘 分子=a*c; 分母=b*d (4)有理数相除 分子=a*d; 分母=b*c 优化函数在创建有理数对象时应执行,在执行其它各种运算之后也需执行它,这样可保证所存储的有理数随时都是最优的。对于判断两个有理数是否相等,由于在对有理数进行各种运算后都对其进行优化,所以判定两个有理数是否相等只需判定它们两个的分子和分母分别相等即可。 选做内容 重载插入(<<)和提取(>>)运算符,使得对有理数可以直接输入输出。设有理数输入格式为: 整数1 整数2 //整数1为分子,整数2为分母 有理数输出格式为: 分子/分母
2. 通讯录管理 问题描述 编写一个简单的通讯录管理程序。通讯录记录有姓名,地址(省、市(县)、街道),电话号码,邮政编码等四项。 基本要求 程序应提供的基本管理功能有: 1) 添加:即增加一个人的记录到通信录中 2) 显示:即在屏幕上显示所有通信录中的人员信息,应能分屏显示。 3) 存储:即将通讯录信息保存在一个文件中。 4) 装入:即将文件中的信息读入程序。 5) 查询:可根据姓名查找某人的相关信息,若找到显示其姓名、地址、电话号码和邮政编码。 6) 修改:可修改一个人的除姓名外其它信息。 测试数据 程序应输入不少于10个人员的通讯录信息,应考虑到人员可以同名的情况。 实现提示 程序可用一个单向链表来管理人员信息,每个人员的姓名,地址,电话号码和邮政编码用一个类Cperson来实现,作为链表的值指针指向这些Cperson类对象,通过链表的遍历可以操作这些数据。 选做内容 为了加快数据定位查找的速度,采用常用优先的方法对链表的各个节点进行排序,即一旦操作了一个人员的数据,他的数据就将被调用到链表的链首。这样经过有限次操作,经常查阅的人员的信息就将排在链表的前端。虽然不能说链首的节点一定是最常用的,但常用的节点一定会排在较靠前的部分,链表查找时所要走的平均距离一定较短。 3. 商品销售统计 问题描述 编写商品销售统计程序,商品的信息有:商品的名称,计量单位(重量或件),单价。所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商品名,输入商品计量单位(如重量,件数等),根据单价算出总价。客户一次购物可能购买多种商品,程序应计算出客户应付的钱款数。 基本要求 程序分为两个部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运行时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换。第二部分运行时,首先显示所有商品名称及代码(商品数目较多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码(如-1)表示本次购物结束。此时。程序计算出应付钱款数并显示。 测试数据 程序应输入不少于10种商品的信息,并进行模拟运行。 实现提示 本程序的商品信息管理可采用与课程设计题目二类似的数据结构,既定义一个商品类,每种商品作为商品类的实例(对象)存储在链表节点中。 选做内容 程序在营业结束时统计每种商品的销售量,销售金额及总营业额。因此第二部分应有营业结束的选择,当用户选择此项时屏幕上显示当天营业的每种商品的销售量,销售金额及总营业额。注意,商品类的数据成员应增加有商品的销售量和销售金额。总营业额是所有商品的营业额之和,可用静态数据成员实现。或可由原商品类派生出一个特殊的类,增加上面的数据成员及相应的成员函数。
4. 研究生初试录取 问题描述 研究生考试课程为4门,其中数学、外语、政治为统一命题,而专业基础课则根据不同的专业由招生学校自行命题。国家对初试录取分数有总分要求(如某一年要求4门课总分应达到310分),另外还有对每门课的最低分数要求(如总分为100的试卷最低应达到40分,总分为150的试卷最低应达到65分)。编程统计初试合格的人数,并按总分由高到低的顺序输出合格考生的信息。 基本要求 程序运行时首先要求输入:考生姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩。这些原始数据应保存到一个文件中。然后输入:录取的总分要求,各课程的最低分数要求。输出要求:过线考生的姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩及总分,这些信息应存放到另一个文件中。 测试数据 程序应输入不少于10名考生的信息,其中应届生和历届生分别有若干名,并且都有合格和不合格的情况。 实现提示 可定义一个考生类存放有关信息和实现相应的操作。分数线数据(总分要求和各门课程的要求)可定义另外的类来存放,但应能被考生类及其派生类直接访问。 选做内容 初试合格的考生应经过复试才能决定是否录取,复试成绩合格(大于一给定分值)可以录取,否则被淘汰。而录取的顺序假设是按照专业基础课和复试成绩的平均值来确定的(因为这涉及到是计划内还是委培问题)。因此,应首先输入初试合格考生的复试成绩及复试的合格线分数,然后按上面要求排序输出并标明被淘汰的学生。
5. 足球联赛积分 问题描述 足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。试编一程序统计最近一轮比赛后,各队积分及排名。 基本要求 设积分表结构如下:队名(不超过15个字符),已比赛的场数,赢的场数,平的场数,负的场数,进球数,失球数,积分。积分表放在正文文件中。最近一轮的结果从键盘输入,其形式为:主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在屏幕上显示。 测试数据 可选择我国当年的甲A或甲B联赛的数据输入,并检查与报章公布的数据是否一致。 实现提示 定义一个球队类,每个球队是均是此类的对象。由于联赛中参赛的队伍数是固定的,因此可用对象数组来实现(当然也可以用链表结构)。每输入两个队的比赛成绩,则相应的队的有关数据(比赛场数,赢的场数,平的场数,负的场数,进球数,失球数,积分等)即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数)排出名次并输出。 选做内容 篮球联赛(如NBA)往往采用胜率来决定名次,胜率就是取胜的场数比赛场数之比。若胜率相同,再由净胜球及进球数来决定名次,通过继承性完成上述要求。
6. 银行账户管理程序 问题描述 设计一个银行账户管理程序,账户的信息有账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址等,允许用户进行如下操作:开户、销户、存款、取款、转账、查询,一个用户可以有多个户头,账户的数值没有上限。 基本要求 程序运行时,可以由用户选择进行何种操作,开户操作要求输入用户信息后自动获取账号,用户销户后账号被回收,并且该账号可以继续分配给其它账户,不允许用户透支,根据姓名或账号可以进行用户的信息查询,所有的账户信息应存放到一个文件中,可以随时的访问和更新。 测试数据 程序应输入不少于10人的账户信息,应考虑到人员同名的情况。 实现提示 可定义一个账户类存放账户信息以及执行相应的操作,可以用一个链表类来管理账户。 选作内容