77范文网 - 专业文章范例文档资料分享平台

《VC++面向对象程序设计》课程设计任务书

来源:网络收集 时间:2018-11-26 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

《VC++面向对象程序设计》课程设计任务书

一、课程设计目的

《VC++面向对象程序设计》是计算机相关专业的一门重要专业基础课。其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。VC++程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。通过课程设计,可以使学生更进一步地理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题,从而达到锻炼学生理论与实践相结合的能力。

本课程设计以设计综合性实验为主,培养学生灵活利用所学综合知识,提高程序设计的能力;同时,也培养学生利用C++语言进行编程和调试程序的能力,使学生能够具有编写较复杂程序的能力。通过此次课程设计,主要达到以下目的:

(1)巩固和加深对VC++面向对象程序设计基本知识的理解,提高综合运用VC++理论的能力。

(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。

(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。

二、VC++课程设计要求

(一)基本要求

1、每组2人完成课程设计。(可以选择前10题中任意2题(每人1题)或者2人共同完成10-20题中任意1题)。其中,设计报告中要能体现明确分工,并每人完成不同的功能模块,对于关键代码或者关键模块不允许出现重复内容。

2、独立思考,独立完成课程设计。课程设计中各任务的设计和调试要求独立完成,遇到问题可以相互讨论,但不可以拷贝。

3、做好上机准备。每次上机实验之前,要事先编制好准备调试的程序,认真想好调试步骤和相关环境的设置方法,准备好有关文档。

4.按照课程设计的具体要求建立功能模块。对于具体模块要求按照如下几个方面内容认真完成:

?需求分析:

在该部分描述清楚模块的具体功能。如果存在多个模块,则需要描述清楚每个模块的具体功能及相互之间的关联关系。

?概要设计:

在此部分对模块的算法设计进行说明(可以采用算法流程图进行描述,并附上该图的相关文字说明),每个程序中使用的存储结构设计说明(如果指定存储结构,请描述清楚该存储结构的定义)。

?详细设计:

该部分要求给出各个算法具体实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)说明。源程序要按照程序编写规则编写。其中,针对变量、函数名称定义及关键代码需要有详细的注释说明,对于重点功能模块要附加上清晰的功能描述及具体注释说明。

?调试分析

采用面向对象程序设计思想进行代码实现与调试。能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。调试正确后,认真整理源程序及其注释,形成格式和风格良好的源程序清单和结果。

测试数据及实验结果,并对实验结果的正确性进行说明。在此基础上,需对算法的时间复杂度和空间复杂的进行简要分析,并对每个模块设计和调试时存在的问题进行思考,并提出解决方法或者改进设想。

⑤课程设计总结

在完成VC++课程设计之后,需要提交课程设计总结。该总结报告除了包含上述?-?的设计内容之外,还需要包括以下内容:课程设计过程中遇到的问题说明,解决问题过程中的思考内容,程序调试能力的思考情况,最后对VC++面向对象程序设计这门课程的思考和认识等内容。

针对每个学生需要进行实验结果检查。对于程序源代码和程课程设计总结文件必须上交,作为考核内容的一部分。(上交时每人交一份文件夹,文件夹具体命名规则为:“学号_姓名_课程设计名称”)。

(二)技术要求

1、用C++语言实现设计任务; 2、程序可读性好,执行效率高; 3、具有良好的操作界面和用户体验; 4、课程设计总结能够很好地反映设计内容。

三、设计任务

要求完成的主要设计任务包括以下几个方面:

1、系统应紧扣题目,实现具体功能及相关操作(例如查找、删除、排序等操作);

2、数据结构等相关设计; 3、主要算法设计; 4、编程及上机实现;

5、撰写课程设计报告,主要包括: ?设计题目;?正文,包括引言、需求分析、模块设计(算法设计)、程序实现及测试、设计总结等;?结束语;?参考文献。

四、时间安排 课程名称 VC++课设 VC++课设 VC++课设 班级 计科1301-1303 计科1301-1303 计科1301-1303 周次 18周-18周 18周-18周 18周-18周 周五3-4节 周三1-4节 计算中心机房 计算中心机房 上机时间(10学时) 周一1-4节 实验室 计算中心机房 五、课程设计题目及内容(均采用面向对象程序设计方法)

题目1:设计一元多项式计算

【任务要求】

(1)能够按照指数降序排列建立并输出多项式;

(2)能够完成两个多项式的相加、相减,并将结果输入;

实现提示:可选择带头结点的单向循环链表 或单链表存储多项式,头结点可存放多项式的参数,如项数等。

要求:在上交资料中请写明:存储结构、多项式相加的基本过程的算法(可以使用程序流程图) 、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;

【测试数据】 自行选择

题目2:链表应用1

【任务要求】 实现两个链表的合并。 基本功能要求:

(1)建立两个链表A和B,链表元素个数分别为m和n个。

(2)假设元素分别为(x1,x2,…xm),和(y1,y2, …yn)。把它们合并成一个线形表C,使得:

当m>=n时,C=x1,y1,x2,y2,…xn,yn,…,xm 当n>m时,C=y1,x1,y2,x2,…ym,xm,…,yn 输出线性表C

(3) 用直接插入排序法对C进行升序排序,生成链表D,并输出链表D。 【测试数据】

1) A表(30,41,15,12,56,80) B表(23,56,78,23,12,33,79,90,55) 2) A表(30,41,15,12,56,80,23,12,34) B表(23,56,78,23,12)

题目3:链表应用2

【问题描述】

已知非空线性链表第一个链结点的指针为list,写出下列各项操作的算法程序。

(1)逆转该线性链表;

(2)删除线性链表中从左往右第一个数据为data的链结点; (3)删除从第I个链结点开始的连续k个结点。 【任务要求】

设计一组输入数据并编写完整的程序。调试程序并对相应的输出作出分析;修改输入数据,预期输出并验证输出的结果。

【提示】

1)逆转一个链表是指在不增加新结点的前提下,依次改变链表中结点的连接方向。

2)删除数据结点时,首先判断链表是否为空,若非空,先判断第一个结点是否满足条件,若是则删除;否则从第二个结点开始顺序查找,直到找到为止,然后删除;对任何不满足条件的情况都报告相应提示信息。

3)从第I个结点开始连续删除k个结点时,考虑以下两种情况:当I=1时,从第一个开始删除即可;当I>1时,先找到前一个结点然后再连续删除K个结点。最后释放各个结点空间。

【测试数据】 自行设定

题目4:二叉树的基本操作(建立、求二叉树树深度、遍历)

【任务要求】

要求输入二树的各个结点,求二叉树的树深度,并能够输出指定遍历方式(层序、先序、中序、后序)的遍历序列;分别建立;建立二叉树存储结构的的输入函数、求二叉树的树深度的函数、遍历序列的函数

层序遍历(用队列的方法实现)

中序遍历( 用递归和非递归的方法一起都实现) 先序遍历( 用递归和非递归的方法一起都实现) 后序遍历( 用递归和非递归的方法一起都实现)

题目5:算术表达式求值

【问题描述】

在计算机中,算术表达式由常量、变量、运算符和括号组成。由于不同的运算符具有不同的优先级,又要考虑括号,因此,算术表达式的求值不可能严格地从左到右进行。因而在程序设计时,借助栈实现。

【任务要求】

算法输入:一个算术表达式,由常量、变量、运算符和括号组成(以字符串形式输入)。为简化,规定操作数只能为正整数,操作符为+、-*、/,用#表示结束。

算法输出:表达式运算结果。

算法要点:设置运算符栈和运算数栈辅助分析算符优先关系。在读入表达式的字符序列的同时,完成运算符和运算数的识别处理,以及相应运算。

题目6:内部排序算法比较

【问题描述】

编制一个演示内部排序算法比较的程序。利用随机函数产生30000个随机整数,利用冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序等排序方法进行排序,并统计每一种排序上机所花费的时间。

【任务要求】

算法输入:以菜单的形式选择排序方法

算法输出:不同情况下关键字参加的比较次数和关键字的移动次数,每一种排序上机所花费的时间。

算法要点:

(1)利用随机函数产生30000个随机整数。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《VC++面向对象程序设计》课程设计任务书在线全文阅读。

《VC++面向对象程序设计》课程设计任务书.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/311385.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: