| 注册
home doc ppt pdf
请输入搜索内容

热门搜索

年终总结个人简历事迹材料租赁合同演讲稿项目管理职场社交

字符串处理系统课程设计

文***品

贡献于2021-04-28

字数:7429


课程设计(文)务书
软件  学  院  软件+交通运输  专  业   班 
课程设计(文)题目 字符处理系统    
二课程设计(文)工作 2012 年 6 月 4日起 2012 年 6 月 10日止
三课程设计(文) 点 创新楼


目录


课题描述 1
二 设计目求 1
三 总体设计 2
四 详细设计 3
41字符串赋值函数3
42求取字符串长度函数4
43字符串复制函数5
44字符串较6
45字符串查找7
46字符串插入7
47字符串删10
五 程序编码 12
六 程序调试测试结果 17
七 总结 19
参考文献 19


课题描述
次课程设计采C++语言编写字符串处理函数系统该系统具出意两字符串求出字符串长度实现字符串拷贝连接较功时具实现定字符串1(串)字符串2(子串)查找子串串中位置定字符串输入插入字符串(字符)插入位置实现字符串(字符)插入功定字符串实现删特定某字符功


二 设计目求
1 设计目
(1) 熟练掌握C++语言基知识技
(2) 掌握面象程序设计基思路方法
(3) 解指针类继承文件开保存链表应
(4) 利学基知识技解决面象程序设计问题
(5) 培养分析解决问题力提高学生科技文写作力



2 设计求

运C++语言描述数类字符串类类应包含数成员成员函数设计基类派生类运态性虚函数知识注重面象程序设计理知识理解实际动手编程力求设计继承派生态性类理解面象程序设计核心概念
(1) 建立数类字符串类
(2) 数字符串信息初始化
(3) 字符串信息输出
(4) 获字符串长度
(5) 字符串中查找字符
(6) 字符串中查找外字符串
(7) 较字符串
(8) 字符串插入删



三总体设计
定义String类实现字符串类赋值连接复制查找交换等操作先设计总类然写出子类实现务定功



四详细设计


41字符串赋值函数:
1)字符串赋值函数输出算法:
cout<<输入字符串1(长度200字符)< cin>>s1
cout<<输入字符串2(长度200字符)< cin>>s2
cout<<字符串1:< cout<<字符串2:<
2) 字符串赋值函数流
程图图41示:

























图41 字符串初始化赋初值

42求取字符串长度函数
1)字符串长度函数算法示:
int i0int j0char *p1s1char *p2s2
cout<<字符串1长度< while(*p1++'\0')++i直碰\0时i+1
cout< while(*p2++'\0')直碰\0时j+1
++j
cout<<字符串2长度< cout<2)求字符串长度流程图图42示:


























43字符串复制函数
1)字符串复制函数算法:
char *p1s1
char *p2s2
cout<<输出复制字符串< while(*p2'\0'){
*p1*p2
p1++
p2++}
*p1'\0'
cout<2)字符串复制函数流程图图43示:






















44字符串较:
1) 字符串连接函数算法:
char *p1s1char *p2s2
cout<<输入字符串1(长度200字符)< cin>>s1
cout<<输入字符串2(长度200字符)< cin>>s2
cout<<输出两字符串较结果<for(*p1'\0'||*p2'\0'++p1++p2)
第字母较指针断移直判断出止
{if((*p1*p2)<0)
{cout<<字符串1字符串2< else if((*p1*p2)>0)
{cout<<字符串1字符串2< }
if(*p1'\0'&&*p2'\0')
cout<<两字符串相等<
2)字符串较函数流程图图44示:





















45字符串查找
1) 字符串查找函数算法:

char a1[512] {'\0'}char a2[512] {'\0'}
int i0int j0
cout << 请输入字符串 cin >>a1a1原字符串
cout << 请输入查找字符串 cin >>a2a2查找
for(i0i<(strlen(a1)strlen(a2)+1)i++)
{
for(j 0 j < strlen(a2) j++)
{
if(a2[j]a1[i+j])
{
break
}
}
if(j strlen(a2))
{
cout << 位置:< return 0
}
}
cout << 存 << endl
return 0
}






46字符串插入
1) 字符串插入函数算法:
int ichar s3[100]char s4[100]
char *p1s1char *p3s3char *p4s4
s1原字符串s3插入字符串
cout<<输入字符串(长度200字符)< cin>>s1
cout<<输入插入字符串:< cin>>s3
cout<<输入插入位置:< cin>>i
for(p1&s1[i](*p1)'\0'++p1++p4){
*p4*p1字符串1赋4
}
*p4'\0'
for(p1&s1[i](*p3)'\0'++p1++p3){
*p1*p3}
*p1'\0'
while(*p1'\0')
++p1
for(p4s4(*p4)'\0'++p4++p1){
*p1*p4}
*p1'\0'
cout<<输出插入字符串新字符串< cout<
2) 字符串插入函数流程图图46示:
开始
int ichar s3[100]char s4[100]
char *p3s3char *p4s4char *p1s1
cout<<输入插入字符串<>s3
cout<<输入插入位置:<>i
p1&s1[i]
(*p1)'\0'
*p4*p1
++p1++p4
*p4'\0'
p1&s1[i]
((*p3)'\0'
*p1*p3
++p1++p3
*p1'\0'
N
N
Y
Y
A








































*p1'\0
++p1
p4s4
(*p4)'\0'
*p1*p4
++p4++p1
*p1'\0'
cout<<输出插入字符串新字符串<结束
N
N
Y
Y
B































图46字符串插入
47字符串删
1) 字符串插入函数算法:
char a[200] int i
cout<<请输入字符字符串:
cin>>a
cout<<请输入删字符位置:
cin>>ii超字符串长度
if(i>200)
cout<<输出错误< else
{
for(int jij<200++j)
{
a[j1]a[j]
}
cout<<删字符串< }
2) 字符串删函数流程图图47示:


图47字符串插入
5 程序编码
#include
#include
using namespace std
int menu_select()
class String
{
private
char s1[200] 定义长度200维字符数组
char s2[200]
public
void Enter() 输入输出字符串
void GetLength()求取字符串长度
void Strcpy() 复制字符串
void Strcmp() 较字符串
int Strfind() 查找字符串
void Strinsert() 插入字符串
void Strdel() 字符删
}
void StringEnter() 输入字符串
{
cout<<输入字符串1(长度200字符)< cin>>s1
cout<<输入字符串2(长度200字符)< cin>>s2
cout<<字符串1:< cout<<字符串2:<}
void StringGetLength() 求取字符串长度
{
int i0
int j0
char *p1s1
char *p2s2
cout<<字符串1长度< while(*p1++'\0')直碰\0时i+1
++i
cout< while(*p2++'\0')直碰\0时j+1
++j
cout<<字符串2长度< cout<
}
void StringStrcpy() 字符串复制
{

char *p1s1
char *p2s2
cout<<输出复制字符串< while(*p2'\0'){
*p1*p2
p1++
p2++
}
*p1'\0'
cout<}
void StringStrcmp() 较字符串
{
cout<<输入字符串1(长度200字符)< cin>>s1
cout<<输入字符串2(长度200字符)< cin>>s2char *p1s1
char *p2s2
cout<<输出两字符串较结果<for(*p1'\0'||*p2'\0'++p1++p2)
第字母较指针断移直判断出止
{
if((*p1*p2)<0){
cout<<字符串1字符串2< break}
else if((*p1*p2)>0){
cout<<字符串1字符串2< break}
}
if(*p1'\0'&&*p2'\0')
cout<<两字符串相等<
}
int StringStrfind() 字符串查找
{
char a1[512] {'\0'}
char a2[512] {'\0'}
int i0
int j0
cout << 请输入字符串
cin >>a1a1原字符串
cout << 请输入查找字符串
cin >>a2a2查找字符串
for(i0i<(strlen(a1)strlen(a2)+1)i++)
{
for(j 0 j < strlen(a2) j++)
{
if(a2[j]a1[i+j])
{
break
}
}
if(j strlen(a2))
{
cout << 位置:< return 0
}
}
cout << 存 << endl
return 0
}
void StringStrinsert() 字符串插入
{
int i
char s3[100]
char s4[100]
char *p3s3
char *p4s4
char *p1s1
s1原字符串s3插入字符串
cout<<输入字符串(长度200字符)< cin>>s1
cout<<输入插入字符串:< cin>>s3
cout<<输入插入位置:< cin>>i
for(p1&s1[i](*p1)'\0'++p1++p4){
*p4*p1
}字符串1赋4
*p4'\0'
for(p1&s1[i](*p3)'\0'++p1++p3){
*p1*p3
}
*p1'\0'
while(*p1'\0')
++p1
for(p4s4(*p4)'\0'++p4++p1){
*p1*p4
}
*p1'\0'
cout<<输出插入字符串新字符串< cout<}
void StringStrdel() 字符串删
{
char a[200] int i
cout<<请输入字符字符串:
cin>>a
cout<<请输入删字符位置:
cin>>i
if(i>200)
cout<<输出错误< else
{
for(int jij<200++j)
{
a[j1]a[j]
}
cout<<删字符串< }
}
int main()
{
char choice
String maillist
for(){
choicemenu_select()
switch(choice)
{
case 1maillistEnter()break
case 2maillistGetLength()break
case 3maillistStrcpy()break
case 4maillistStrcmp()break
case 5maillistStrfind()break
case 6maillistStrinsert()break
case 7maillistStrdel()break
case 8exit(0)
}
}
return 0
}

int menu_select()
{
char c
cout<<※※※※※※※※※※※※※※\n
cout<<※ 字符串处理函数系统 ※\n
cout<<※ ※\n
cout<<※ 1输入字符串 ※\n
cout<<※ 2求字符串长度 ※\n
cout<<※ 3复制字符串 ※\n
cout<<※ 4较字符串 ※\n
cout<<※ 5查找字符串 ※\n
cout<<※ 6插入字符串 ※\n
cout<<※ 7删字符串 ※\n
cout<<※ 8退出 ※\n
cout<<※※※※※※※※※※※※※※\n
cout<<※※※谢谢系统※※※※\n
cout<<※※※※※※※※※※※※※※\n
cout<<\n请输入(1~8)
do{
cinget(c)
}while(c<'1'||c>'8')
return c48
}
6 程序调试测试结

vc++60运行界面图61示

图61 字符串处理函数系统菜单界面

选择1输入字符串1:c++kecheng字符串2:zifuchuan运行界面图62示:
图62字符串赋初值输出
选择2运行界面图63示:

图63 字符串长度
选择3运行界面图64示:

图64 字符串复制

选择4运行界面图65示:
(1)

(2)

(3)

图65 字符串较

选择5输入字符串:kaoshichengji查找cheng运行界面图611示:

存图示

图66字符串查找

选择6插入字符串 she插入c++kechengji中运行界面图612示:

图67字符串插入
选择7输入字符串huaadongjiaoda删a运行界面图612示:

图68字符串删

7 总结
次课程设计中完成字符串处理函数系统实现字符串简单复制较删等功时实现字符串查找功中关字符串查找实现太果字符串中重复字符话查找第字符位置希学中解决问题完美实现次程序中虚函数掌握位程序设计时没虚函数处太完美字符串插入时没原数组基础建立新字符数组希学期学中改进问题
通做C++程序设计课程设计复C++语言知识加深C++语言中种语句理解运收获然做字符串插入时遇困难网搜索资料根理解写出程序认识足明白编程道路远路走调试程序程中总结出规律懂样更快更发现错误收获学中会增加知识熟练度量简单明方法编写程序增加知识面解更编程语言编程道路走更加利


参考文献
[1] 钱C++程序设计教程[M]北京:清华学出版社2003
[2] 谭浩强C++程序设计[M]北京:清华学出版社2004
[3] 李春葆数结构(C语言版)题解析[M] 北京:清华学出版社2002

文档香网(httpswwwxiangdangnet)户传

《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 2 香币 [ 分享文档获得香币 ]

该文档为用户出售和定价!

购买文档

相关文档

污水处理系统应急预案

为贯彻“安全第一,预防为主”的安全生产方针,确保单位、社会及人民生命财产的安全,预防重大环保事故发生,并能在事故发生后迅速有效控制处理,根据本厂污水处理工艺特点,本着“预防为主,自救为主,统一指挥,分工责任”的原则,制定《污水处理系统应急预案》。

雷***阳 5年前 上传2419   0

英驰代帐处理系统应用方案

英驰代帐处理系统应用方案 一、系统的设计思想 2 二、系统的特点 2 三、系统的运行环境 4 1、软件环境 4 2、硬件环境: 4 3、网络环境 4 四、系统基本功能模块 4 1、系统初始化 4 2、帐务处理 5 3、报表 5 4、系统管理 5 5、系统窗口和在线帮助 6 五、系统工作流程 6 1、系统业务构架 6 2、财务系统工作流程 7 3、报表系统业务流

A***o 7年前 上传4246   0

原水预处理系统施工方案

**东鑫垣煤化工脱盐水项目                                                       原水预处理系统施工方案     东鑫垣煤化工脱盐水站项目                原水预处理系统施工方案                          编制:           审核:              

g***e 8年前 上传5843   0

实验废水处理系统(标准版)

实验室综合废水处理系统基于排放量较小、间隙性强的,成分非常复杂,污染性强的特点,在目前国家尚未针对实验检验废水出台专门相关监管标准,在研发和生产,本公司引用国家相关规范文件:

大***生 4年前 上传1204   0

循环冷却水处理系统年终个人工作总结

循环冷却水处理系统年终个人工作总结 我公司负责对焦化厂化产车间四期工业循环冷却水处理系统进行水质稳定化学处理和现场技术服务。自投入运行以来循环水系统运行正常,各加药设备完好,可保证正常进行系统加药工作,所加药剂中**国家明令禁止的有毒有害的化学污染物质;水质状况良好,理化检测中心对各循环水系统水质检测数据,均符合国家标准和沙钢数据标准;每月打开换热器时,热交换器设备**明显的腐蚀及结垢现象,换

p***0 12年前 上传13965   0

HOYU生产废水处理系统操作说明书

HOYU生产废水处理系统操作说明书 水处理有限公司 第1章  前言 1、  有限公司位于**市国家高新技术产业开发区,在其产品生产和检测过程中产生有一定量的废水。为了使排放废水达到国家污水排放标准,针对性的设计了一套废水处理系统,使经过处理后的排放废水达到国家规定的污水排放标准。 2、根据当地环保部门明确要求, 该废水处理出水执行中华人民共和国国家标准—《污水综合排放标准(GB8978—

s***6 10年前 上传8666   0

基于Android移动平台图像处理系统开发

在今天的全球化世界里,科技不断的进步与创新更加促进了外语学习途径的多样化,随着人们学习方式的便捷并迅速的发展,特别是以电子词典为主工具的出现,用户对此类产品的便捷、功能的要求越来越高。目前,电子词典的最佳载体是移动设备,例如移动电话或计算机,其既兼顾了传统的纸质词典的功能,同时,移动电子词典APP也有着便携,功能齐全,并且具有随着因特网实时更新的优点。应用在两大手机系统--Android系统中的移动词典APP更使越来越多的普罗大众能够更加便捷自由的学习外语。

王***朝 3年前 上传3345   0

CPIII数据处理系统新产品开发课题书

                                                     课题编号:   新产品开发课题书  课题名称: CPIII数据处理系统软件 课题负责人:                       课题立项时间:    XXXX年XX月 XXXXXXXX公司 一、项目立项目的和依据 1、立项目的:为满足我国无砟轨道施工测量控制和运营维护

s***g 11年前 上传9629   0

某居民小区生活污水处理系统

某居民小区生活污水处理系统摘要: 本文是关于日处理1万吨的某生活小区污水处理厂的设计。该设计采用了传统的活性污泥法作为处理的主体工艺。但是我们综合考虑了该小区的污水的特点,结合个方面因素,设计一个工艺流程合理,布局适宜的污水处理场。关键字: 生活污水 活性污泥 悬浮填料 污水处理  前言  随着我国社会和经济的高速开展,环境问题日益突出,尤其是城市水环境的恶化,加剧了水资源的短缺

静***雅 7个月前 上传160   0

办公室自动化和字处理——字处理系统

字处理系统 □ 字处理系统就是计算机系统 不管什么原因,销货商和字处理专家都已选用“逻辑”和“智能”这样的词来描述字处理的能力。“计算机”在字处理的所有词汇中占很少的部分。或许,这是一种要使字处理脱离计算机和信息系统的企图。不要搞错了,字处理系统就是计算机系统!大多数独立字处理系统的配置类似于小型商用计算机系统,唯一的差别是软件不同。 □ 字处理系统的种类

南***吹 12年前 上传433   0

我国“城市危机处理系统”亟待建立

我国“城市危机处理系统”亟待建立随着我国城市进入快速建设期和发展期,我国大中城市也同时迈入了“非稳定状态”的危机高发期。        专家认为,“城市危机处理系统”亟待建立。         北京国际城市发展研究院院长连玉明教授日前在“东芝—沈阳”论坛上介绍说,世界城市发展的一般规律表明,人均GDP超过1000美元时,城市化进程将进入成长期;当人均GDP超过3000美元时,

m***g 8年前 上传478   0

《数据课程设计》与《数电课程设计》与《vb课程设计》心得体会汇编

《数据课程设计》与《数电课程设计》与《vb课程设计》心得体会汇编  数据课程设计心得体会(一)  在我看来,数据库课程设计主要的目标是利用课程中学到的数据库知识和技术较好的开发设计出数据库应用系统,去解决各行各业信息化处理的要求。通过这次的课程设计,可以巩固我们对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基本方法,进一步提高我们综合运用所学知识的能力。  当我们这组决定做

咖***醉 2年前 上传587   0

微课程设计

重点: 认识细节描写的概念、作用难点: 掌握细节描写的写法要求学生认识细节描写的概念、作用并掌握掌握细节描写的写法。

快***7 2年前 上传527   0

物流课程设计

中国现代物流业,是适应中国经济快速开展和对外开放、市场竞争日益加剧的形势而开展起来的新兴产业。随着经济全球化、信息化进程的加快,近几年中国现代物流业有了较快的开展。已成为我国现代化程度和经济开展效率的重要标志。但是总体来看,中国现代物流业还处于起步阶段,物流市场呈现出“物流热〞状态,竞争尤为剧烈。

夏***子 2年前 上传633   0

小古文课程设计

 拓展性课程“智乐点课坊” 课程类型 菜单 课程名称: 智乐小古文 适用年级: 四、五年级 总 课 时: 30课 执 教 者: 中心小学编制前 言小古文为简单的文言文。而文言文是中国古代的书面语言,是现代汉语的源头。兴趣以

蓝郎梦 1年前 上传401   1

课程设计自我总结

课程设计自我总结  篇一  课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在,  课程设计心得体会。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。  回顾起此次单片机课程设计,至

君***光 10年前 上传747   0

工程结构课程设计

宝鸡文理学院地理与环境学院20XX级      系 别: 地理与环境学院 专业班级: 给水排水工程班 老师: 学生姓名: 学 号:    地理与环境学院2015年 X月 X 日某1000矩形水池

z***u 1年前 上传326   0

课程设计小组总结

课程设计小组总结 为期10天的课程设计终于结束了,这段时间是我们小组在大学期间不可多得的美好记忆。他给了我们很多的感受和经验,让我们在饱受酸甜苦辣的同时也体会到集体的力量和成功的喜悦。在我们以后的人生中,这些感受和经验将会充实我们的生活,美化我们的人生。 在这次课程设计开始的时候,我们小组就紧密的结合这次课程设计的目标和宗旨,合理的制定了课程设计的日程安排和小组的分工,并且在后期的实习中,严

t***0 9年前 上传11040   0

软件课程设计心得

软件课程设计心得第一篇:软件课程设计心得软件工程课程设计课程设想心得体味,这也激起了我尔后勤奋进修的乐趣,我想这将对我以后的进修发作主动的影响。其次,此次课程设想让我充实熟悉到团队协作的主要性,只要合作协作才干保证整个项目标有条不絮。别的在课程设想的进程中,当我们碰着不大白的成绩时,指点教员老是耐心的解说,给我们的设想以极大的辅佐,使我们获益匪浅。因此很是感谢感动教员的教育。经过此次设想

h***u 10年前 上传703   0

软件课程设计心得

软件课程设计心得  软件工程课程设计课程设想心得体味,这也激起了我尔后勤奋进修的乐趣,我想这将对我以后的进修发作主动的影响。其次,此次课程设想让我充实熟悉到团队协作的主要性,只要合作协作才干保证整个项目标有条不絮。别的在课程设想的进程中,当我们碰着不大白的成绩时,指点教员老是耐心的解说,给我们的设想以极大的辅佐,使我们获益匪浅。因此很是感谢感动教员的教育。经过此次设想,我懂得了进修的主要性,

m***l 11年前 上传993   0

工厂供电课程设计

前言课程设计是教学过程中的一个重要环节,通过课程设计可以巩固本课程理论知识,了解变电所设计的基本方法,了解变电所电能分配等各种实际问题,培养独立分析和解决实际工程技术问题的能力,同时对电力工业的有关政策、方针、技术规程有一定的了解,在计算绘图、编号、设计说明书等方面得到训练,为今后的学习工作奠定基础。机械厂的电力系统由变电,输电,配电三个环节组成,这决定了此电力系统的特殊性,在确保供电正常的

文***品 1年前 上传424   0

夹具课程设计说明书课程设计

 课程设计说明书 课 程 名 称 机械制造装配设计 设 计 课 程 钻床夹具设计 专 业 机械设计制造及其自动化 班 级 姓 名

z***u 5年前 上传1875   0

课程设计 建筑施工技术课程设计

 建筑施工技术课程设计院 系: 专 业:班 级:设计人: 建筑施工技术课程设计一、 工程概况该工程位于吉林省吉林市郊区,占地面积145.45㎡,层高3.3m,共二层。该别墅离公路90多米远,地处松花江畔、背倚国家级森林公园龙潭山,地处雾凇大桥和龙潭大桥之间,与雾凇宾馆为邻,这里依

郭***林 6个月前 上传161   0

《调速系统课程设计》课程设计教学指导方案

 调速系统 课程设计 教学指导方案 双闭环直流电机调速系统设计 设计题目: 电气信息学院 2016年8月 第一部分 设计指导方案 一、设计题目 题目:《双闭环直流电机调速系统设计》 二、课题要求 1、设计的目的与要求: 设计的目的: 调速系统课程设计的目的是培养学

文***品 5年前 上传1460   0

250m3/hr反渗透脱盐水处理系统技术方案

250m3/hr反渗透脱盐水处理系统技术方案 一、设计基础 1.1原水水质 水源:湖水 水质情况: 项目 单位 数值 项目 单位 数值 悬浮物 mg/L 7.0 总残渣 mg/L 201 色度 度 2.0 总硬度 mmol/L 3.4 浊度 NTU 3.0 钙硬度 mmol/L 3.14 甲基橙碱度 mmol/L 3.10 镁硬度

l***g 11年前 上传10166   0