2022年937面向对象课程设计指导

上传人:资**** 文档编号:269173092 上传时间:2022-03-22 格式:DOCX 页数:32 大小:228.52KB
返回 下载 相关 举报
2022年937面向对象课程设计指导_第1页
第1页 / 共32页
2022年937面向对象课程设计指导_第2页
第2页 / 共32页
2022年937面向对象课程设计指导_第3页
第3页 / 共32页
2022年937面向对象课程设计指导_第4页
第4页 / 共32页
2022年937面向对象课程设计指导_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《2022年937面向对象课程设计指导》由会员分享,可在线阅读,更多相关《2022年937面向对象课程设计指导(32页珍藏版)》请在金锄头文库上搜索。

1、精品学习资源面对对象课程设计指导专业:电子信息科学与技术指导老师:黄迎春,程磊一、课程设计的目的面对对象课程设计是电子信息科学与技术专业特别重要的实践性环节之一,是学完面对对象程序设计课程后的一次全面的综合练习;本课程设计主要在于巩固同学对面对对象程序设计的基础理论的懂得,把握面对对象程序设计开发的基本方法,进一步提高同学综合运用所学学问的才能;二、课程设计的内容及要求以 Microsoft Visual C+ 6.0作为集成开发环境,完成面对对象课程设计;要求每人完成以下一个题目,题目由指导老师指派,同学进行程序分析、设计、编程与调试、功能测试,并最终完成课程设计报告,课程设计题目如下:PA

2、RT I1. 分数类的设计与实现2. 一维数组类模板的设计与实现3. 向量类的设计与实现4. 多项式类的设计与实现5. 设计一个能够实现nn 矩阵操作的类6. 复数类的设计与实现7. 链表类 模版)的设计与实现8. 大整数类的设计与实现9. 多边形类虚函数设计10. 小型人员信息治理系统的设计与实现11. 高校老师工资的运算与显示12. 老师与干部信息治理13. 哈希表类模板的设计与实现14. 赫夫曼编码的设计与实现15. 二叉树类模板的设计与实现16. 队列类模板的设计与实现欢迎下载精品学习资源17. 栈类模板的设计与实现18. 表达式求值的设计与实现19. 字符串类的设计与实现20. 简洁

3、加密系统设计21. 某系同学成果治理系统22. 制作一个通讯录程序23. 设计一个库存治理系统24. 设计 INI配置文件分析器25. 二维点容器设计26. 集合并、交和差的运算PART II27. 运算器程序28. 小型数字钟29. 象棋程序30. 设计一个歌友会售票系统31. 设计一个打地鼠小嬉戏32. 设计一个贪吃蛇小嬉戏33. 设计一个小型考试系统34. 弹球小嬉戏题目分成 C+语言基本应用和MFC应用两部分,每名同学必需完成第一部分和其次部分中各一道题;第一部分题目已经按学号安排好,其次部分由同学自行挑选并完成;三、课程设计时间支配本课程设计在学完面对对象程序设计课程后进行,具体时间

4、为2 周;四、课程设计考核方法1)课程设计报告不少于5000 字,报告除了在封面中应有题目、班级、姓名、学号和课程设计日期以外,其正文一般包括需求分析、类与对象设计、算法设计、调试问题分析、用户使用说明、参考文献等部分;2)程序演示和验收答辩情形在课程设计的后期,指导老师在试验室进行课程设计程序的验收与答辩,由同学演示欢迎下载精品学习资源编制的程序,并回答老师提出的问题,老师检查同学程序的编写情形;3)课程设计的考勤与纪律遵守情形五、各题目的具体要求PARTI1. 分数类的设计与实现建立用于完成分数形式运算的类RationalNumber ;编写一个测试该类的程序;用整数变量表示类的私有数据即

5、分子和分母);给类供应一个能够对所声明的对象初始化的构造 函数;为了能够在不供应初始化值的情形下也能对对象初始化,构造函数中应当包含默认的值;构造函数仍应当以最简分数的形式储备数据,即2/4应当在对象中储备成分子为1、分母为 2 的形式;公有成员函数应当有以下功能:( 1) 两个有理数相加,以最简形式储存结果;( 2) 两个有理数相减,以最简形式储存结果;( 3) 两个有理数相乘,以最简形式储存结果;( 4) 两个有理数相除,以最简形式储存结果;( 5) 以 a/b 的形式输出有理数a 是分子 ,b 是分母);( 6) 以浮点形式输出有理数;2. 一维数组类模板的设计与实现建立一维数组数据结构

6、的模板类,使一维数组中的数据元素可以是char, int, float等多种数据类型,类中的成员函数主要包括:( 1) 排序函数,能够对数组元素进行升序排列;( 2) 查找函数,能够在输入待查元素后,输出其在数组中的下标;( 3) 构造函数,初始化输入数组元素,这里要求数组元素的个数n 是一个变量;( 4) 析构函数,释放数组元素所占用的堆内存;( 5) Set 函数,可以为指定的数组元素赋值;( 6) Get 函数,可以读取指定数组元素的值;( 7) 重载数组拜访运算符“ ”;( 8) Print函数,可以输出数组元素的值;( 9) 编写一个测试该模板类的程序;3. 向量类的设计与实现编写一

7、个实现 n 维向量各种操作的类,功能包括:欢迎下载精品学习资源( 1) 构造函数实现 n 维向量的初始化构造,这里n 可变;( 2) 析构函数实现向量动态内存的释放;( 3) 拷贝构造函数实现向量的拷贝构造;( 4) 重载赋值运算符,实现两个向量之间的赋值;( 5) 编写成员函数求两个向量的内积;( 6) 编写成员函数求两个向量的外积;( 7) 编写成员函数求两个向量的和;( 8) 编写成员函数求两个向量的差;( 9) 编写成员函数判定两个向量之间的线性相关性;( 10) 编写一个主函数测试多项式类的上述功能;可以自行编写链表类,或者用数组,或者使用STL 中的 list 容器,也可以采纳ve

8、ctor 类实现;4. 多项式类的设计与实现开发多项式类Polynomial,多项式的每一项用链表的结点表示,每项包含一个系数和4一个指数;例如: 2x 的指数为 4,系数为 2;请开发一个完整的Polynomial类,包括构造函数、析构函数以及“get ”函数 读取值)和“ set ”函数 设置值);该类仍要供应以下重载的运算符:( 1) 重载加法运算符,将两个多项式相加;( 2) 重载加法运算符,将两个多项式相减;( 3) 重载赋值运算符,将一个多项式赋给另外一个多项式;( 4) 重载加法运算符 * ,将两个多项式相乘;( 5) 编写一个主函数测试多项式类的上述功能;可以自行编写链表类,或

9、者使用STL 中的 list 容器,也可以采纳vector 类实现;5. 设计一个能够实现n n 矩阵操作的类这里的 n 可变,主要功能包括:( 1) 使用构造函数完成方阵的初始化赋值动态内存安排);( 2) 使用析构函数完成矩阵动态内存的释放;( 3) 重载加法运算符,实现两个矩阵的和;( 4) 重载加法运算符,实现两个矩阵的差;( 5) 重载加法运算符 * ,实现两个矩阵的积;( 6) 重载加法运算符 =,实现两个矩阵之间的赋值;( 7) 使用函数实现矩阵的转置;( 8) 使用函数求矩阵中的最大值;( 9) 使用函数求矩阵中的最小值;( 10) 添加函数 Det 以得到矩阵对应行列式的值欢

10、迎下载精品学习资源( 11) 重载加法运算符 ,实现矩阵依据行列的格式输出( 12) 编写一个主函数测试上述功能;6. 复数类的设计与实现设计一个复数类,复数类的数据成员是real和 imag,它们的数据类型是double ,分别表示复数的实部和虚部,要求如下:( 1) 编写一个带有缺省参数的构造函数,默认值为0,0 ),实现一个复数的构造;( 2) 编写一个拷贝构造函数,实现一个复数的拷贝构造;( 3) 编写一个析构函数,在函数中输出real , imag )被析构,例如:假如复数的实部为 1,虚部为 2,就被析构时程序输出:“”为复数类的友元函数,其功能是依据以格式real , imag)

11、( 10) 输入复数;例如:假如复数的实部为1,虚部为 2 ,就输入的格式是“1, 2)”;( 11) 重载运算符“ ”为复数类的友元函数,其功能是依据以格式real , imag)( 12) 输出复数;例如:假如复数的实部为1,虚部为 2 ,就输出的结果是“1, 2)”;( 13) 以上函数在类的内部写出函数原型,在类的外部写出函数实现代码,最终编写一个主函数 main 测试以上的函数功能;7. 链表类 模版)的设计与实现编写一个实现同学信息单链表各种操作的类,同学信息包括学号、姓名和成果,类实现以下功能:( 1) 初始化单链表为空表;( 2) 实现单链表的插入操作的成员函数;( 3) 实现

12、单链表的删除操作的成员函数;( 4) 实现单链表的查找操作的成员函数给定学号,查找其学号、姓名和成果);( 5) 实现求单链表长度的成员函数;欢迎下载精品学习资源( 6) 实现建立单链表的成员函数,单链表节点的个数不确定;( 7) 重载运算符“ +=”实现两个链表对象合并功能;( 8) 编写 Unique )成员函数,实现剔除链表中重复元素,使全部节点值唯独;( 9) 编写一个主函数测试上述功能;8. 大整数类的设计与实现运算机中表示整数的位数是有限的,设计并实现一个能够进行任意长度整数精确运算的类,完成以下功能:( 1) 用构造函数实现大整数的构造;( 2) 重载“”运算符,实现两个大整数的

13、相加运算;( 3) 重载“”运算符,实现两个大整数的相减运算;( 4) 重载“ * ”运算符,实现两个大整数的相乘运算;( 5) 重载“ +ak-1*10k-2+.+a2*101+a1*100并用 a0 储备长整数m的位数,即 a0=k ;可以自行编写链表类,或者使用STL 中的 list 容器,也可以采纳vector 类实现;9. 多边形类虚函数设计设计多边形基类 CPolygon 及其派生类 CTriangle、CRectangel和 CCircle类,为各个类设计虚函数Input、Area 、Print,实现从数据文件读入数据,从而生成各种多边形对象,并且运算面积和输出对象信息,数据文件格式如下:TRIANGLE 底边长高RECTANGLE 长宽CIRCLE半径每一行储备一个对象,第一单词位对象类型,其后是数据,具体实例:TRIANGLE 30 5RECTANGLE 127TRIANGLE 20 3CIRCLE27CIRCLE8要求采纳 STL 中的 vector来储备基类指针来指向各个对象,并用循环实现各外形对象的操作;欢迎下载精品学习资源10. 小型人员信息治理系统的设计与实现某小型公司主要有四类人员

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 高中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号