C课程设计字符串类的设计与实现.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C课程设计字符串类的设计与实现

封 皮 (按学校要求手工填写) 课 程 设 计 任 务 书 学院 信息科学与工程 专业 通信工程 学生姓名 *** 学号* 设计题目 字符串类的设计与实现 内容及要求: 计算机处理的对象分为数值数据和非数值数据,字符串是最基本的非数值数据。其应用非常广泛,它是许多软件系统(如字符编辑、情报检索、词法分析、符号处理、自然语言翻译等系统)的操作对象。其重要性不言而喻。 要求采用C++语言实现进行字符串类的设计, 具体要求如下: (1) 使用堆分配存储表示实现字符串的存储; (2) 实现串赋值操作StrAssign(T, chars); (3) 实现串比较操作StrCompare(S,T); (4) 实现求串长操作StrLength(S); (5) 实现串连接操作Concat(T,S1,S2) (6) 实现求子串操作SubString(Sub,S,pos,len) (7) 实现清空子串操作ClearString(S); (8) 将上述功能作为类的成员函数实现,编写主函数测试上述功能。 进度安排: 第17周:分析题目,查阅课题相关资料,进行类设计、算法设计; 第18周:程序的设计、调试与实现; 第19周:程序测试与分析,撰写课程设计报告,进行答辩验收。 指导教师(签字): 年 月 日 学院院长(签字) 年 月 日 目 录 1 需求分析 - 1 - 2 算法基本原理 - 1 - 3 类设计 - 2 - 4 详细设计 - 3 - 4.1 类的接口设计 - 3 - 4.2 类的实现 - 5 - 4.3 主函数设计 - 10 - 5 DOS界面程序运行结果及分析 - 11 - 5.1 程序运行结果 - 11 - 5.2运行结果分析 - 12 - 6 基于MFC的图形界面程序开发 - 13 - 6.1 基于MFC的图形界面程序设计 - 13 - 6.2 程序测试 - 17 - 6.3 MFC程序编写总结 - 19 - 7 参考文献 - 19 - 1 需求分析 (1) 计算机处理的对象分为数值数据和非数值数据,字符串是最基本的非数值数据。其应用非常广泛,它是许多软件系统(如字符编辑、情报检索、词法分析、符号处理、自然语言翻译等系统)的操作对象。其重要性不言而喻。 (2)字符串是字符的有限集合,可记作a=’a1 …an’。其中a是字符串的名,单括号里的字符序列是字符串的值,单引号不是字符串的成分,其作用是为了避免变量名与常量混淆。ai(0in+1)称为字符串的元素,是构成字符串的基本单位。N表示字符串的长度,且n=0,如果等于0,则称a为空串,记作:a=’’。 2 算法基本原理 (1)字符串从结构上看是一种以字符为数据元素的线性表,从存储结构的不同可分为顺序表和链式存储结构,它们都适用于字符串,但由于要求的操作不同,为了提高运算效率所选用的存储结构也是不同的。对于字符串改动较频繁的一般用链式存储结构,而顺序存储结构能够高效的读取。所以各有优点。本程序由于需要大量改动数据,理所当然的选择链式存储结构,其算法结构为: Typedef struct { Char *ch; /*若字符串为空,则按长度分配存储区,否则为NULL */ Int length; /*字符串的长度*、 } (2)本题字符串要求用堆来分配字符串的存储空间,采用堆分配函数malloc,它的格式为T-ch=(char *)malloc(sizeof(char)*len,就会为字符串分配内存。 (3)函数是有字符串类进行调用的,通过在主函数中定义字符串类的对象,作为函数的参数,对于需要改写对象的需要进行址传递,我们可以通过函数在主函数中的反映来观察他的执行状态。 3 类设计 4 详细设计 整个程序分为三个独立的文档,Linequ.h文件中包括矩阵类Matrix和线性方程组类Linequ的声明,Linequ.cpp文件中包括这两个类的成员函数实现文件;main.cpp文件包括程序的主函数,主函数中定义了一个类Linequ的对象,通过这个对象求解一个四元线性方程组。 4.1 类的接口设计 //Linequ.h文件,实现类的声明 #include iostream #include cmath using namespace std; class Matrix //基类Matrix声明 { public: //外部接口 Matrix(int dims=2); //构造函数 ~Matrix(); //析构函数 void SetMatrix(double *rmax); //矩阵赋初值 void PrintM(); //显示矩阵 protected: int

文档评论(0)

almm118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档