- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南京理工大学紫金学院VC++课程设计报告
课 程: VC++课程设计 系 别: 计算机系 班 级: 计算机科学与技术 学 号: 110601102 姓 名: 顾佳燕 选题名称: 字符串操作 选题难易别: A级 起止时间: 2012.11.20~2012.12.22 指导教师: 朱 俊
2012年 12 月
程序功能介绍:
通过多种成员函数的定义和运算符的重载,实现字符串的各种直接操作,如:去掉串首、串尾与子串相同的字符,子串在主串中的定位,用新子串更换主串中的指定子串,比较字符串的大小,字符串连接等,所有功能已经通过验证。
课程设计要求
将主程序main()中的输出语句printf()改为VC++里的输出语句。
程序中对字符串的处理函数均使用了字符数组sAns,它占用了大量存储空间,试使用动态分配存储空间的方法改写所有的函数,是之避免使用预先定义的长度很大的数组;并增加类的析构函数,删除动态分配存储空间。
新增运算符重载函数,重载—,—=运算符,实现字符串的删除操作,并根据返回值判断操作是否成功。
新增成员函数void DelRepeat(),实现在原字符串中删除相邻的重复字符的功能。
新增成员函数 int AddStart(FString str ,int start),实现将字串str插入到原字符串中从第start字符开始位置上,操作正返回1。
改写main函数的结构,界面为菜单形式,根据菜单选项来验证类中所定义的各种成员函数及操作符重载函数的正确性。
对课程题目的分析与注释
字符串或串(String)是由零个或多个字符组成的有限序列。一般记为 s=a1a2···an(n=0)。它是HYPERLINK /view/552871.htm编程语言中表示文本的HYPERLINK /view/675645.htm数据类型。
一个简单的字符串操作是“连接”:也就是说先写一个字符串S,随后在后面再写一个T得到ST这样一个过程。 其它的常见操作包括在一个长字符串中有哪些信誉好的足球投注网站一个子串,排列一组字符串以及分析一个字符串。因为存在如此多的字符串应用方式,所以相应地有许多权衡了不同应用的相关算法。 高级的字符串算法通常使用包括后向树和有限状态机在内的复杂机制和HYPERLINK /view/9900.htm数据结构。
程序设计和说明(说明算法思想、设计思路,给出重要的、关键的代码)
类的数据结构
原程序定义了大量的成员函数和运算符重载函数,但这些函数都是在固定空间的字符数组上网前提下实现的,课程设计要求所有的函数要利用动态分配存储空间的方法存储字符串对象,所以基本上类中所有函数都要重新写,类中的数据成员增加一项字符串的长度int nLength,这样,动态分配存储空间的操作就可以简单一些char *p=char[nLength+1]。
#include iostream.h
#include stdio.h
#include string.h
#include windows.h
#include stdarg.h //定义参数个数可变的函数时用到
#define MAX_FSTRING_LENGTH 250000 //用作数组长度
class FString { // 字符 串类定义
private:
char *sString;
int nlength;
public:
FString(); //缺省构造函数
FString(char *str);//新增构造函数,用字符串常量初始化字符串对象
FString(FString );//新增拷贝构造函数,用类的对象初始化
~FString(){} //新增析构函数,释放字符串对象所占用的空间
void DelRepeat();
FString AddStart(FString str,int start);
inline FString operator-(const char *sAppend);//新增函数,重载减法运算符
inline FString operator-(const FString sAppend); //新增函数,重载减法运算符
inline FString operator-=(char *val); //新增函数,重载减法运算符
inline FString operator-=(FString val); //新增函数,重载减法运算符
main函数结构
main函数采用菜单选项的形式来实现类中的各个功能,显示菜单如下:
字符串加法
void
您可能关注的文档
- ai ei ui 教学实录及评议ai ei ui 教学实录及评议.doc
- ai ei ui-复习三ai ei ui-复习三.doc
- ai ei ui教学设计上交稿ai ei ui教学设计上交稿.doc
- ai_ei_ui 说课稿ai_ei_ui 说课稿.doc
- Ajaxbm北京大学医学部——外科学笔记Ajaxbm北京大学医学部——外科学笔记.doc
- agc气相色谱仪和agilent气相色谱仪价格agc气相色谱仪和agilent气相色谱仪价格.docx
- ai_ei_ui_ao_ou_iu_练习题设计ai_ei_ui_ao_ou_iu_练习题设计.doc
- AK0+910-AK1+040试验段方案AK0+910-AK1+040试验段方案.doc
- altium designer中元件的名称altium designer中元件的名称.doc
- AMI编码及译码系统设计AMI编码及译码系统设计.doc
- 《政策激励视角下环保产业绿色创新模式创新与推广研究》教学研究课题报告.docx
- 2025年海洋石油修井机项目可行性分析报告.docx
- T_EPIAJL 13—2024(吉林省产业园区碳排放核算指南).pdf
- 文娱行业数音乐平台开发方案.pptx
- 杭州杭杰健康管理有限公司水云街诊所建设项目环评报告.docx
- 历史高考创新通史人教版阶段十二西方工业文明的曙光工业革命前的世界阶段提升练(十二).doc
- 2025年东软集团股份有限公司校园招聘模拟试题一套.docx
- 2025年得利斯集团有限公司校园招聘模拟试题必威体育精装版.docx
- 杭州航民合同精机有限公司X射线机室内探伤项目环评报告.docx
- T_GDNS 014—2024(健康医疗信息零信任安全访问控制应用规范).pdf
文档评论(0)