资源预览内容
第1页 / 共18页
第2页 / 共18页
第3页 / 共18页
第4页 / 共18页
第5页 / 共18页
第6页 / 共18页
第7页 / 共18页
第8页 / 共18页
第9页 / 共18页
第10页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
课程设计(论文)题 目: 文章编辑 院 (系): 专业班级: 姓 名: 学 号: 指导教师: 2013年 9 月 20日西安建筑科技大学华清学院课程设计(论文)任务书专业班级:计算机2011 学生姓名: 指导教师(签名): 一、课程设计(论文)题目文章编辑二、本次课程设计(论文)应达到的目的数据结构是实践性很强的课程。课程设计是加强学生实践能力的一个强有力手段。课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。严格实施课程设计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到显著的促进作用。目的:熟练字符串表在链式存储结构上的实现(提示: 用双向链表实现)。 三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等) 静态存储一页文章,每行最多不超过80个字符,共N行。可以输入大写、小写的英文字母、任何数字及标点符号。输入数据:大写、小写的英文字母、任何数字及标点符号(每行字数datai=str0i+k=0;j=0;p-datai+j=strjk+;j+;k=len2count+;i=i+k-1;结束YNYNNY 图4-1统计str出现次数流程图 查找第一个字符,如果有第一个字符即p-datai=str0,设计数器k=0查找这个字符后面的字符与要查找的字符串是否匹配即p-datai+j=strj,如果匹配k+重复第二步,如果k=len2,则查找到,count+;如果没查找到,重新进行第一步void delstringword(char *s,char *str) /*删除字符串*s中的字符串*str*/ strpi jsfor(m=0;mi;m+)tmpcount+=sm;for(n=j;nlen;n+)tmpcount+=sn;tmp图4-2 删除某一特定字符串实现思想:从字符串s中寻找str第一次出现的位置 *p=strstr(s,str);len=strlen(s);i=len-strlen(p)即前i项恰好不含要删除的字符串,将前i项复制到tmp中j=i+strlen(str) 即要删除的字符串在i+1和j之间,将j之后的字符串复制到tmp中将tmp赋给串s,返回s4.3 函数间的关系整个程序主要包括统计各个字符串个数函数、删除某特定字符串函数以及主函数,主函数调用实现各功能所用的函数。4.4 系统功能模块图图4-1 系统功能模块图5.详细设计5.1 结构体的详细定义定义结构体struct line 文本采用顺序存储,行与行之间采用链式存储。typedef struct line char *data; struct line *next;LINE; /*创建一链表,同时向里面输入文本数据*/void Create(LINE * &head) printf (请输入一页文章,以Ctrl+E(E)为结尾(每行最多输入80字符!):n);5.2 系统函数详细介绍1、统计字母数:int CountLetter(LINE * &head)2、统计数字数:int CountNumber(LINE * &head) 3、统计空格数:int CountSpace(LINE * &head)4、统计文章的总字数:int CountAll(LINE * &head)5、统计str在文章中出现的次数:int FindString(LINE * &head,char *str)6、删除指定的字符串void delstringword(char *s,char *str)7、向屏幕输出文章void OutPut(LINE * &head)开始菜单输入文章浏览文章统计信息统计字符串删除字符串退出5.3 系统功能模块介绍图5-4主程序设计流程图 5.4 具体模块设计(1)统计字符个数算法流程图i=0 n=0i=Nj=0 len=strlen(wzi)j=lenif(wzij=n1&wzij=n2)n+j+i+return n算法结束图5-1 统计字符个数算法流程图(2)查找某一字符串出现的次数算法流程图i=0 n=0i=Nc=strstr(wzi,s)c!=0 c=0c=strstr(
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号