字符串的查找与替换

上传人:工**** 文档编号:512034764 上传时间:2024-03-02 格式:DOC 页数:13 大小:176.50KB
返回 下载 相关 举报
字符串的查找与替换_第1页
第1页 / 共13页
字符串的查找与替换_第2页
第2页 / 共13页
字符串的查找与替换_第3页
第3页 / 共13页
字符串的查找与替换_第4页
第4页 / 共13页
字符串的查找与替换_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《字符串的查找与替换》由会员分享,可在线阅读,更多相关《字符串的查找与替换(13页珍藏版)》请在金锄头文库上搜索。

1、中南林业科技大学课程设计报告设计名称: 数据结构课程设计 姓 名: 李思贤 学 号: 20124555 专业班级: 2012级计算机科学与技术 系 (院): 计算机与信息工程学院 设计时间: 20132014学年第二学期 设计地点: 电子信息楼 机房 成绩:指导教师评语: 签名: 年 月 日1.设计目的数据结构课程主要介绍最常用的数据结构,阐明各种数据结构内在的逻辑关系,讨论其在计算机中的存储表示,以及在其上进行各种运算时的实现算法,并对算法的效率进行简单的分析和讨论。进行数据结构课程设计要达到以下目的:(1)了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;(2) 初步掌握软

2、件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;(3)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; (4)训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。2.课程设计任务与要求问题描述:打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定的单词替换为另外一个单词。基本要求:1. 符合课题要求,实现相应功能;2. 操作方便易行;3. 根注意程序的实用性、安全性;3.需求分析打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定的单词替换为另外一一个单词用户:学生开发者:李思贤4.概要设计程序头设计对程序

3、作简单介绍以及输出程序制作人的基本信息。main() printf(nnnttt数据结构课程设计n); printf(nttt题目:串的查找与替换n); printf(nttt专业:计算机科学与数学n); printf(nttt学号:20124555n); printf(nttt姓名:李思贤);printf(nt程序作用:打开一篇英语作文,在该文章中找出所有给定的单词,然后对nt所有给定的单词替换为另一个单词再存盘。); printf(n*n);主函数void main()通过for循环对字符串进行匹配,找到匹配的单词然后将copy的单词字符放入strTwo数组中,不匹配的单词也放入数组str

4、Two中完成替换,最后把strTwo中的字符放回文件中完成操作。5.功能模块详细设计系统流程图:串的查找和替换字符串的替换字符串的查找记录查找到的字符位置,用输入的字符替换,并输出到文本从文本读入英语文章从输入端输入文字,与文本内容对比,完成字符串的查找。 串的查找与替换要实现的功能是:打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定的单词替换为另外一个单词,再存盘。首先实现程序比较简单的功能,即:输入要替换的单词和给定单词gets(keyWords); gets(copyWords)。然后实现程序打开文件的功能。最后编写最核心的替换功能,首先用关键字来匹配要查找的单词,第一个单

5、词匹配上的话再判断这个关键字在不在单词的首字母上,否则不匹配,主要是要实现替换单词的功能不替换其他单词中的字符串。然后匹配第二个字母,这样一次类推的判断。不匹配的单词直接放入strTwo数组中,匹配的单词先替换然后再放入strTwo数组中。4.2 核心代码打开文件if (fp = fopen(filename, r) =NULL )printf(文件打开失败!n); exit(0);查找和替换单词while (!feof(fp)/* 读文件 */strOnecountOne+ = fgetc(fp);/*这是从指定稳中取得一个字符 strOnecountOne+ = fgets(fp);这是从

6、指定文章中取得一个字符串*/countOne-;/* 减去最后一个文件结束字符 */for (i=0; icountOne; i+)if (keyWords0 = strOnei)if ( = strOnei-1) | (n = strOnei-1) | (0 = i)flag = 1;countFlag = i + 1; for (j=1; keyWordsj!=0; j+) if (keyWordsj != strOnecountFlag+)/* 是否匹配 */ flag = 0;break; if ( = strOnecountFlag) | (n = strOnecountFlag)

7、| (EOF = strOnecountFlag)/* 2.检查单词后的一个字符 */if (1 = flag)/* 若匹配,则进行拷贝 */ i = countFlag-1;for (j=0; copyWordsj!=0; j+) strTwocountTwo+ = copyWordsj; else/* 另外 */strTwocountTwo+ = strOnei;else/* 另外 */strTwocountTwo+ = strOnei;else/* 另外 */strTwocountTwo+ = strOnei; 6.调试分析本软件是基于Windows的编程开发,所以,软件调试必须在Win

8、dows环境下进行。调试前须做好准备工作:(1)需要安装Visual C+6.0的计算机一台;配置好之后,在Visual C+6.0环境下进行软件的调试。(2)测试数据:输入端输入:输入要查找的字符 输入要替换的字符输入文件的名字文本文件的输入:输入想要修改的英文文章。7.用户手册1 本程序可以在vc+5.0和vc+6.0 的环境下运行。2 在vc中创建一个工程,将源程序复制到.cpp中,编译链接就可以。3 选择编译、运行以后会出现运行界面,选择相应的选项,根据提示即可进行演示。8.测试结果截图如下:图1 程序开始的界面图2 输入要查找和替换的单词 图3 输入要打开的文件名 图4 替换前文本文

9、件内容 图5 替换后文本文件的内容9. 源代码#include #include #define SIZE 20 /* 查找单词字符和输入替换单词少于20 */#define MAXLEN 10000 /* 文章字符不大于10000 */void main()int i, j;int flag; int countFlag; int countOne = 0; int countTwo = 0; char keyWordsSIZE; char copyWordsSIZE;char strOneMAXLEN; char strTwoMAXLEN;char filename20; printf(n

10、nn数据结构课程设计n); printf(n题目:串的查找与替换n) printf(nt程序作用:打开一篇英语作文,在该文章中找出所有给定的单词,然后对nt所有给定的单词替换为另一个单词再存盘。); printf(n*n);FILE *fp;printf(请输入要查找的单词: );gets(keyWords);printf(请输入要替换的单词: );gets(copyWords);printf(请输入要打开的文件名:);scanf(%s,filename);if (fp = fopen(filename, r) =NULL )/* 读文件,前边的就是输入的文件名,后边是指只读read */pr

11、intf(文件打开失败!n); exit(0);while (!feof(fp)/* 读文件 */strOnecountOne+ = fgetc(fp);/*这是从指定稳中取得一个字符 strOnecountOne+ = fgets(fp);这是从指定文章中取得一个字符串*/countOne-;/* 减去最后一个文件结束字符 */for (i=0; icountOne; i+)if (keyWords0 = strOnei)/* 判断查找单词第一个字符是否匹配 */if ( = strOnei-1) | (n = strOnei-1) | (0 = i)/* 1.检查单词前的一个字符 */flag = 1;countFlag = i + 1; for (j=1; keyWordsj!=0; j+) if (keyWordsj != strOnecountFlag+)/* 是否匹配 */

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号