提示:1、可以增加或减少函数。
1、字符串string 类的实现。自定义一个string 类用来存储字符串,串中的字符存放在动态分配的数组中,该类拥有至少但不限于以下成员函数:
构造函数:为对象分配动态存储空间,完成初始化,要考虑多种参数的重载形式,例如。
无参数、参数类型为char 或char*;
析构函数:将占用的动态存储空间释放;
拷贝构造函数:实现string 对象之间的深拷贝构造;
issubstring 函数:判断参数是否为当前串的子串,参数可以为char*或string 类型;
str2num 函数:将数字字符串转成数值;
upperstr 函数:将字符串中的小写字母均转为大写字母;
replacestr 函数:替换string 中的某个字符串;
replacechar 函数:替换string 中的某个字符;
delstr 函数:删除string 中的某个字符串;
delchar 函数:删除string 中的某个字符;
重载了以下运算符:
运算符:实现string 对象之间的深拷贝赋值;
运算符:将两个string 对象首尾相连;
] 运算符:访问string 对象中某个下标位置的字符;
运算符:输出string 对象;
自行设计类中的数据成员和其它内容,并编写测试**使用该sting 类。
2、集合set类的实现。定义一个元素类型为char、元素个数不限的集合类set,集合中的元素存放在动态分配的存储空间中,它拥有至少但不限于以下成员函数:
构造函数:为对象分配动态存储空间,输入数据,完成初始化;
析构函数:将占用的动态存储空间释放;
拷贝构造函数:实现set 对象之间的深拷贝构造;
isempty 函数:判断集合是否为空;
size 函数:返回集合中元素个数;
iselement 函数:判断某字符是否属于该集合;
重载了以下运算符:
运算符:求两个集合的并集;
运算符:求两个集合的交集;
运算符:实现set 对象之间的深拷贝赋值;
运算符:求两个集合的差集;
= 运算符:判断两个集合是否相等;
= 运算符:增加元素;
= 运算符:删除元素;
= 运算符:判断某集合是否为当前集合的子集;
< 运算符:输出set 对象;
自行设计类中的数据成员和其它内容,并编写测试**使用该set 类。
3、分数fraction类的实现。建立一个分数类fraction,其拥有int 类型的私有数据成员denominator(分母)和numerator(分子),另外还拥有至少但不限于以下成员函数:
构造函数:为参数指定默认值,初始化分数,防止分母为0,并以最简分数形式存储数。
据;拷贝构造函数:用一个分数对象初始化新建分数对象;
输出函数print():以浮点形式输出分数;
同时为该类重载了以下运算符:
运算符:两个分数相加,以最简分数形式保存结果;
运算符数:两个分数相加,以最简分数形式保存结果;
运算符:两个分数相加,以最简分数形式保存结果;
运算符:两个分数相加,以最简分数形式保存结果;
关系运算符:比较两个分数的大小关系及是否相等;
< 运算符:以a/b 的形式输出分数;
类中的其它部分自行设计,编写测试**使用该分数类。
4、矩阵matrix 类的实现。建立一个matrix 类用来表示m 行×n 列的矩阵,它有至少但不限于以下成员函数:
构造函数:根据参数值创建一个矩阵,并为矩阵元素动态分配存储空间,同时完成数据输入;
析构函数:将矩阵占用的动态存储区释放;
拷贝构造函数:实现矩阵对象之间的深拷贝构造;
运算符重载函数:实现矩阵对象之间的深拷贝赋值;
transpose 函数:实现矩阵的转置;
另外重载 + 和 * 运算符,实现矩阵的加法和乘法;
自行设计类中的数据成员和其他内容,同时编写测试**使用matrix 类。
5、整型相量ivector类的实现。建立一个ivector类用来存放整型数组,数组存放在动态分配的存储空间。该类拥有至少但不限于以下成员函数:
构造函数:为对象分配动态存储空间,完成初始化,要考虑多种参数的重载形式,例如。
无参数、参数类型为int;
析构函数:将占用的动态存储空间释放;
拷贝构造函数:实现对象之间的深拷贝构造;
at 函数:返回第i个元素,类似c数组,索引从0开始;
front 函数:返回首元素;
back 函数:返回尾元素;
size 函数:返回数组的大小,即元素个数;
sort 函数:将数组元素按值大小进行升排序;
pop_back 函数:增加一个数据到末尾;
push_back 函数:删除末尾的一个数据;
重载了以下运算符:
运算符:实现ivector对象之间的深拷贝赋值;
运算符:将两个ivector对象首尾相连;
] 运算符:访问ivector对象中某个下标位置的字符;
运算符:输出ivector对象的所有元素;
自行设计类中的数据成员和其它内容,并编写测试**使用该ivector类。
6、复数complex类的实现。建立一个complex类,可以进行复数的加法、减法、乘法、除法、取模、乘方、求2个复数向量之间的夹角等运算,复数的输出显示。复数包含实部与虚部两个部分,同时,复数也可以表示为模和角度。
因此,数据成员可以包含实部、虚部、模和角度。该类拥有至少但不限于以下成员函数:
构造函数:注意各种形式的构造函数;
display_rm 函数:代数表示法显示,如a+bj;
display_tr:三角表示法显示,如r<;
back 函数:返回尾元素;
size 函数:返回数组的大小,即元素个数;
sort 函数:将数组元素按值大小进行升排序;
pop_back 函数:增加一个数据到末尾;
push_back 函数:删除末尾的一个数据;
重载了以下运算符:
运算符; 运算符;
运算符;运算符;
自行设计类中的数据成员和其它内容,并编写测试**使用该complex类。
C 课程设计题目
课程设计。一 题目 在下列题目中,任选一题 1.掷骰子游戏设计。2.用c 语言设计求解线性规划的单纯形法3 采用面象对象技术实现一个货币系统4.制作一个电子课程表。5.实现一个电梯实时状况模拟程序6.学生成绩管理系统7.图书管理系统。二 文档要求。1 需求分析 要求实现的功能和实现方式 2 系统总框...
C课程设计题目
面向对象的程序设计 c 课程设计题目。姚远2011 12 16 使用专业 班级 计科10 信管10 计网 计应 软件10级。说明 以下各题的实现技术不包括任何数据库访问技术,如等。部分题目需要通过各种集合类完成数据在内存中的存储 集中管理。每题采用分层架构模式来完成。均需自行设计类,windows窗...
C 课程设计题目
一 学生学籍信息管理系统设计 难度2 1 需求分析。学生基本信息 学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作 查询功能要求提供查找和显示操作 删除功能要求实现删除操作 排序功能要求实现排序操作 另外还应该提供键盘式选择菜单以实现功能选择。2 总体设计。整个系统可以设计为数据录入模块...