全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京理工大学C+课程设计实验报告姓名 方圆 学号 0511590127 班级 05115901 任课教师 肖亮 时间 2006-9-21 教师指定题目 37:字符串操作 评定难易级别 A 实验报告成绩 .实验内容:字符串操作1.1 程序功能介绍通过多种成员函数的定义和运算符的重载,实现字符串的各种直接操作,如:去掉串首 串尾与子串相同的子符,子串在主串的定位,用新子串更换主串中的指定子串,比较字符串的大小,字符串连接等,所有功能已经经过验证.1.2 程序设计要求(1) 将主函数main()中的输出语句printf()改为VC+中的输出语句。(2) 程序中对字符串的处理函数均使用了字符数组sAns,它占用了大量存储空间,试使用动态分配存储空间的方法改写所有的函数,使之避免使用预先定义的长度很大的数组;并增加类的析构函数,删除动态分配的存储空间.(3) 新增运算符重载函数,重载-,-=运算符,实现字符串的删除操作,并根据返回值判断操作是否成功.(4) 新增成员函数void DelRepeat(),实现在原字符串中删除相邻的重复字符的功能。(5) 新增成员函数int AddStart(FString str,int start),实现将字串str插入到原字符串中从第start字符开始位置上,操作正确返回1.(6) 改写main函数的结构,界面为菜单的形式,根据菜单选项来验证类中所定义的各种成员函数及操作符重载函数的正确性。2. 源程序结构流程框图与说明(含新增子函数的结构框图)字符串操作流程图菜单显示项目选择循环字符串加法字符串减法字符串比较字符串具体操作删除字符串首部相同字符删除字符串尾部相同字符删除字符串所有重复字符字符串的插入操作字符串的替换操作字符串的倒置替换操作开始选择判断退出退出132254513467选择 错误输入重选3. 基本数据结构 class FString / 字符串类定义private:char*sString;int nLength; /新增成员数据,是字符串对象的长度/String data must be first (to look like string)public:/ConstructorFString(); /缺省构造 FString(char *str)nLength=strlen(str);str=new charnLength+1;strcpy(sString,str); /新增构造函数,用字符串常量初始话字符串对象FString(FString &); /新增拷贝的构造函数,用类的对象初始化FString()if(sString)deletesString; /新增析构函数,释放字符串对象所占用的空间void DelRepeat(); /新增成员函数,删除原字符串中相邻的重复字符 int AddStart(FString str,int start); /*新增成员函数,将字符串str插入到原字符串中从第start字符串开始位置上,操作正确返回1*/inline FString operator-(const char *sAppend); /新增函数,重载减法运算符 inline FString operator-(const FString sAppend); /新增函数,重载减法运算符inline FString operator-=(char* val); /新增函数,重载减法运算符inline FString operator-=(FString val); /新增函数,重载减法运算符FString Mid(const int nStart,const int nLength); /从字串sString中第nStart个字符开始取出nLength个字符FString Left(const int nLength); /从字串sString左边取出nLength个字符FString Right(const int nLength); /从字串 sString 右边取出 nLength 个字符int InStr(const int nStart, const char *sSearch,const bool bCaseSensitive=true);int InStrRev(const int nStart, const char *sSearch,const bool bCaseSensitive=true);FString RTrim(const char sChar= );FString LTrim(const char sChar= );FString Trim(const char sChar= );FString Replace(const char *sSearch, const char *sReplace);FString Format(const char *sFormat, .); /参数可变的函数int Length();/Various Operatorsinline operator char*(); /转换函数inline FString operator+(const char *sAppend); /新增函数,重载加法运算符inline FString operator+(const FString sAppend); /新增函数,重载加法运算符inline char operator(const int nIndex); /数组下标运算符重载inline FString operator+=(char* val); /新增函数,重载加法运算符inline FString operator+=(FString val); /新增函数,重载加法运算符/Comparison Operatorsinline int operator(const char *val);inline int operator(const char *val);inline int operator=(const char *val);inline int operator!=(const char *val);inline int operator=(const char *val);inline int operator(const FString val);inline int operator(const FString val);inline int operator=(const FString val);inline int operator!=(const FString val);inline int operator=(const FString val);/Assignment OperatorsFString operator=(const char *val);FString operator=(const FString val);4. 程序运行结果界面 图1、初始界面 图2、字符串加法 图3 、字符串减法 图4 、字符串比较大小 图5、对字符串的具体操作 图6、删除字符串首部相同的字符 图7、字符串的插入操作 图8、字符串的替换操作 图9、字符串的倒置替换操作5. 课程设计遇到的技术问题与解决思路 问题1: 在菜单选择时,若输入字符则会出现死循环。解决办法: 将定义为整型输入变
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广告合同续约事宜沟通函(6篇)
- Q-GDW 13099.1-2018 铝镁硅系 6063G 复合屏蔽封闭绝缘铜或铝母线采购标准 第1部分:通.用技术规范
- 2026年食源性疾病试题及答案
- 2026年共青团入团考试团员素养测评试题与答案
- 年度合作协议签订邀请函(7篇)
- 2025安徽宿州市萧县建设投资集团有限公司子公司招聘12人笔试历年参考题库附带答案详解
- 2025四川泸州市民安科技有限公司招聘人员2人笔试历年参考题库附带答案详解
- 2025吉林公主岭吉农绿色农业高新科技发展有限公司公开招聘笔试历年参考题库附带答案详解
- 2025内蒙古自治区通辽市招聘市直属国有企业经理层人员4人笔试历年参考题库附带答案详解
- 2025中电建电力投资集团有限公司社会招聘16人笔试历年参考题库附带答案详解
- 医院电梯施工组织方案
- 二次搬运施工方案及措施
- 重大风险管控知识培训课件
- 国开2025年《数据库应用技术》形考作业1-4答案
- 湘江战役教学课件
- 高中数学《人工智能数学基础》教案(2025-2026学年)
- GB/T 191-2025包装储运图形符号标志
- WeleUnitDiscoveringUsefulStructures句子基本结构课件-高中英语人教版
- 医保基金管理培训课件
- 设计人工合同范本
- DB32∕T 4023-2021 农业场所及园艺设施电气设计标准
评论
0/150
提交评论