串的查找和替换

上传人:d**** 文档编号:119689482 上传时间:2022-07-15 格式:DOCX 页数:17 大小:199.74KB
返回 下载 相关 举报
串的查找和替换_第1页
第1页 / 共17页
串的查找和替换_第2页
第2页 / 共17页
串的查找和替换_第3页
第3页 / 共17页
点击查看更多>>
资源描述
课程设计数据结构)班级 姓名 学号 指导教师二O年一月二十日课程设计任务书及成绩评定I、题目的目的和要求:1、设计目的 巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解, 最终使学生能够熟练应用数据结构的知识写程序。(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正 确求解过程并编写代码实现。2、设计题目要求:设计内容:问题描述:打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定 的单词替换为另外一个单词,再存盘。内容要求:1. 根据题目要求进行需求分析,分析出该项任务的主要功能和设计重点。2. 根据需求分析的内容划分模块3. 利用VC+软件进行程序设计并调试通过4. 写出课程设计说明书II、设计进度及完成情况日期内容1.10-1.11选取参考书,查阅有关文献资料,完成资料搜集和系统分析工 作。1.121.14创建相关数据结构,录入源程序。1.171.19调试程序并记录调试中的问题,初步完成课程设计报告。1.201.21上交课程设计报告打印版并进行课程设计答辩,要求每个同学 针对自己的设计回答指导教师3-4个问题。考核结束后将课程设计报告和源程序的电子版交班长统刻 光盘上交。口、主要参考文献及资料1 严蔚敏 数据结构( C 语言版)清华大学出版社 19992 严蔚敏 数据结构题集(C语言版)清华大学出版社19993 谭浩强 C 语言程序设计 清华大学出版社4 与所用编程环境相配套的C语言或C+相关的资料W、成绩评定:设计成绩: (教师填写)指导老师: (签字)二o年一月二十-一 日目录第一章 概述 1第二章 系统分析 2第三章 概要设计 3第四章 详细设计 4第五章 运行与测试 8第六章 总结与心得 1112参考文献第一章 概述课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉及和课程 相关的各个方面,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课 程更全面的学习和应用,理解和掌握课程的相关知识。数据结构是一门重要的专业 基础课,是计算机理论和应用的核心基础课程。数据结构课程设计,要求学生在数据结构的逻辑特性和物理表示、数据结构的选择 和应用、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计 方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。在这次的课程设计中我选择的题目是串的查找和替换。该课程设计实现了对文件的 查找和替换。我采用的数据结构是字符串数组,这样操作起来比较方便,思路比较清晰 而如果采用指针则容易造成思路混乱,增加出错的几率。该课程设计可以实现对已打开 文件的查找和替换,操作完毕关闭程序后,文件的内容为修改后的内容,实用性比较强第二章 系统分析一功能分析 该课程设计的功能主要实现串的查找与替换,首先打开一个文档,对该文档进行 查找和替换,该课程设计的文档中要包含替换后对文件保存的函数。以免造成替换后 文件数据的丢失。二主要函数及其功能initstr( )从文件初始化数组inputchatihuan( )从键盘输入要替换的单词charu(char source,int index,char dest)把要替换的单词插入到被替换单词的位置tihuans( )调用函数是实现替换第三章 概要设计1. 数据结构的设计 本设计所采用的数据结构数组str500保存从文件中读取的字符chazhao15保存被替换的单词tihuan15 保存要替换的单词采用数组操作便于数据分析,思路清晰,便于操作。2. 算法的设计(1)课程设计中首先要实现初始化数组。(2)为了能够统计要查找的字符出现的次数,需要建立能够查找第一个出现要查找字符的下标的函数和要查看文章中共有多少个要查找的字符的函数。(3)建立能够输入要替换的字符串的函数,该函数可以显示要被替换的字符串和替 换的字符串,这样可使思路更为清晰。(4)建立能够替换字符串的函数,实现字符串替换的功能。(5)建立函数能够实现替换后的字符串得以保存。第四章 详细设计1、 设计每个成员函数;/*数据结构:串的查找和替换作者:赵延良*/#include#include#include#includeFILE * fp;char str500;char chazhao15;char tihuan15;/*从文件初始化数组*/void initstr()int i=0;fp=fopen(string.txt,rt);/*重新打开文件*/if(fp!=NULL)dofscanf(fp,%c,&stri);i+;while(!feof(fp) ; fclose(fp);/*查找第一个出现要查找字符的下标*/int chazhaostring()int i,j,k;for(i=0;istrlen(str);i+) j=i;k=0;while(strj=chazhaok)&(chazhaok!=0)&(strj!=0) j+;k+;if(chazhaok=0) return i;return -1;/*输入要替换的字符串*/void inputchatihuan() printf(Please input chaozhao string:n); scanf(%s,chazhao);printf(Please input tihuan string:n);scanf(%s,tihuan);getchar();/*查看文章中共有多少个要查找的字符*/void chazhaos()int i,j,k,all=0;printf(Please input chaozhao string:n);scanf(%s,chazhao); for(i=0;i=index) sourcei=sourcem;i-;m-;i=index; m=0;while(mj)sourcei=destm;i+;m+;/*将 str 中要替换的内容替换掉*/void tihuans()int a,b=0;inputchatihuan();do a=chazhaostring();b=a;if(b=-1)printf(the word doesnt exit!n); return;else while(strb+strlen(chazhao)!=0) strb=strb+strlen(chazhao); b+;strb=0;charu(str,a,tihuan);a=chazhaostring();while(a!=-1);printf(tian huan succeedn); printf(nPress anykey return);getchar(); /*保存修改后的文章信息*/ void save() int i=0;FILE *fp;fp=fopen(string.txt,w);while(istrlen(str)fputc(stri,fp);i+;void welform()system(cls);printf( SYSTEM MAIN MENU n);. j1111 A-g -* - -I- J #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* 1 - , | printf(*1:输出内容*n);printf(*n);printf(*2:查找*n);printf(*n);printf(*3:替换*n);printf(*n);printf(*0:退出*n);j / 1111 A-g -* - -I- J #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* 1 - , | printf(nnPlease input order:n); void main() char ch; initstr();while(1) welform(); scanf(%d,&ch); switch(ch) case 1:system(cls);printf(%sn,str);getchar();getchar();break; case 2:system(cls);chazhaos();break; case 3:system(cls);tihuans();break; case 0:save(); exit(0);default: printf(nYou hava input the wrong order!n); printf(Press anykey return);getchar();getchar();第五章 运行与测试运行测试首先进入界面:显示文件输出内容:显示查找内容界面显示替换内容界面:退出界面按任意键即可退出在调试程序中我遇到了一些问题,主要内容如下:(2)在源代码中,如果子函数放在主函数之后,需要先对子函数声明。为使源代码 更为简洁,我将子函数放在主函数前面。这样可以使程序更为简洁,思路更加清晰。(1)打开的文件中,要替换文件的内容,只有当执行完替换后,并且能够完全退出 可执行程序时,内容才可以完全替换。第六章 总结与心得两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养 了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在课程设计过程 中,我一开始对自己如何完成一个独立的数据结构茫然不知所措,通过向老师和同学们 请教,我逐步的了解了如何完成这次课程设计,并且提高了我对串的操作的熟练程度。课程设计是我们专业课程知识综合应用的实践训练,是我们迈向社会,从事职业工 作前一个必不少的过程”千里之行始于足下”,通过这次课程设计,我深深体会到这句千 古名言的真正含义我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明 天能稳健地在社会大潮中奔跑打下坚实的基础在这次数据结构课程设计过程中,体现出自己单独完成问题的能力以及综合运用知 识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的 不足和薄弱环节,从而加以弥补。在此我十分感谢我的老师,在他们的指导下,我克服了在课程设计过程中许多的难 题与不足,使我能够熟练的掌握了关于串的有关操作。由于我的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分 乐意接受老师的批评与指正,我将万分感谢。参考文献:数据结构与C+高级教程清华大学出版社2004数据结构习题集(C语言版)清华大学出版社1 严蔚敏、吴伟民主编2 殷人昆等著3 金远平著4 许卓群等著5 Frank M.Carrano 等著6 严蔚敏、吴伟民数据结构(C语言版)数据结构(C+版)数据结构(C+描述)数据结构与算法清华大学出版社 2002清华大学出版社 2001清华大学出版社 2005高等教育出版社 2004
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!