文章编辑程序设计.doc_第1页
文章编辑程序设计.doc_第2页
文章编辑程序设计.doc_第3页
文章编辑程序设计.doc_第4页
文章编辑程序设计.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课 程 设 计 报 告 课程设计名称 数据结构课程设计 专 业 计算机科学与技术 班 级 学号 姓 名 指导教师 成 绩 2012年2月26日数据结构课程设计文章编辑一、设计任务与要求1二、需求分析12.1 用户需求分析12.2 功能需求分析1三、概要设计23.1 各模块的算法设计说明23.2 存储结构设计说明4四、详细设计4五、实际运行结果4六、收获与体会7七、主要参考资料7一、设计任务与要求问题描述:输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过80个字符,共N行。要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能;输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出全部字母数、数字个数、空格个数、文章总字数(3)输出删除某一字符串后的文章;二、需求分析2.1 用户需求分析随着社会的发展,人们对信息的处理要求逐渐增高,设计这个程序是为了方便人们能更加迅速地处理文字信息,从而提高工作效率。2.2 功能需求分析功能分析如图所示文章编辑系统统计某一字符串在文章中出现的次数删除某一字符串并输出文章结束统计文章字数输出原文操作界面功能说明:输出原文:此功能是将原先录入的信息读出,并在屏幕上显示出来。统计文章字数:此功能是统计出文章中的字母数,空格数,数字数和文章总字数。统计某一字符串在文章中出现的次数:通过用户输入要查询项来统计要查询的字符在文章中的出现次数。删除某一字符串并输出文章:删除文章中用户希望删除的字符,并将修改后的文章在屏幕上显示出来。结束:退出程序。2.3 系统需求分析 (开发环境、工具)Windows操作系统,visual6.0编译环境三、概要设计3.1 各模块的算法设计说明本程序由输入、输出、统计、查找、删除、选择功能模块组成,以下为重要模块的流程图:开始输出判断字符类型若为回车若为空格若为数字若为字母记录行数记录空格个数记录数字个数记录字母个数判断字符数量是否超出范围结束开始等待输入回车?将字符输入数组结束1.输入模块 2.统计模块开始获取字符数组及其长度逐行判断字符串比较正确?计数+1结束行数超出范围?输出3.查找模块: 3.2 存储结构设计说明线性表是我们最常用的一种简单而基本的数据结构,线性表中数据元素间的关系是一对一的,就是说除了头尾数据元素外,其他元素都是首尾相接的。其逻辑结构简单,便于实现和操作,因此是一种在实际应用中广泛采用的数据结构。四、详细设计为实现本程序功能所包含的库函数有:#include#include为实现本程序功能所包含的功能模块及注释有:输出模块:void print() /输出用户输入的各行字符int i,j;for(i=0;i=n;i+)/行数 for(j=0;jli;j+)/逐字输出 printf(%c,strij);printf(n);/每输出一行之后换行统计模块:void tongji() /统计int i,j;int wz,kg,sz,sum; /分别记录文字个数,空格个数,数字个数,总数wz=kg=sz=sum=0;for(i=0;i=n;i+) for(j=0;jli;j+) if(strij!=n)/若为回车则记录行数+1 sum+; if(strij=a)|(strij=A)/若为字母则记录字母个数+1 wz+; if(strij=0)/若为数字则记录数字个数+1 sz+; if(strij= )/若为空格则记录空格数+1 kg+; printf(n全部字母数为:%dn,wz);printf(数字个数为:%dn,sz);printf(空格个数为:%dn,kg);printf(文章总字数为:%dnn,sum);查找模块:void chazhao() /统计某一字符串在文章中出现的次数int i,j,k,l1,y;int x=0;l1=strlen(a);/获取字符串长度for(i=0;i=n;i+)/确定行数 for(j=0;jli;j+)/进行此行字符串的逐字判断 y=1; if(j+l1=li)break; for(k=0;kl1;k+) if(ak!=strij+k)y=0;break;/若检查字符串中出现不同字符则挑出 if(y)x+;/若未跳出则判定为出现符合条件的字符串,出现次数+1 for(i=0;il1;i+) printf(%c,ai);printf( 在文中出现次数为:%dnn,x);删除模块:与查找模块功能相似,此处省略。五、实际运行结果首先是进入操作界面,如图5-1所示。图5-1 菜单选1进行输出原文操作,如图5-2所示图5-2 菜单选2统计文章字数,如图5-3所示图5-3 菜单选3统计某字符的出现次数,如图5-4所示图5-4 菜单选4删除某字符并输出变更后的文章,如图5-5所示图5-5 菜单选5退出界面,如图5-6所示图5-6 菜单六、收获与体会通过本次课程设计,让我对数据结构这门学科对有了进一步的认识,这次的编程中我学习和巩固一些常用的知识但遇到了不少的问题,但是通过察参考书和同学的帮助,我解决了其中的大部分,虽然还存在一些小的问题,但基本上已经不影响使用了,在这次编程中我深刻地体会到了自己的基本功不扎实,所以在接下来的学习生涯里我要更认真的学习,争取把落下的知识补上。我相信在今后的学习中我会更加努力,积累经验。使自己在编程等各方面得到提高。七、主要参考资料数据结构(c语言版)作者:严蔚敏 吴伟民出版者:清华大学出版社序号:ISBN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论