完整word版数据结构课程设计文章编辑系统word文档良心出品

上传人:博****1 文档编号:509799765 上传时间:2022-10-28 格式:DOC 页数:45 大小:1.07MB
返回 下载 相关 举报
完整word版数据结构课程设计文章编辑系统word文档良心出品_第1页
第1页 / 共45页
完整word版数据结构课程设计文章编辑系统word文档良心出品_第2页
第2页 / 共45页
完整word版数据结构课程设计文章编辑系统word文档良心出品_第3页
第3页 / 共45页
完整word版数据结构课程设计文章编辑系统word文档良心出品_第4页
第4页 / 共45页
完整word版数据结构课程设计文章编辑系统word文档良心出品_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《完整word版数据结构课程设计文章编辑系统word文档良心出品》由会员分享,可在线阅读,更多相关《完整word版数据结构课程设计文章编辑系统word文档良心出品(45页珍藏版)》请在金锄头文库上搜索。

1、课程设计任务书专 业计算机科学与技术班 级姓 名日 期计设起 止文章编辑系统设计题目:设计任务(主要技术参数) :本课程设计要求结合数据结构所学的基础知识利用C 语言进行程序设计,本程序要求实现以下功能:输入一页文字,程序可以统计出文字、数字、空格的个数。硬件环境:处理器:英特尔第三代酷睿 i3-3110M 2.40GHz双核内存: 4GB(三星 DDR3 1333MHz)主硬盘:希捷ST500LM012 HN -M500MBB (500GB/5400 转 /分)显示器:三星SEC3649(14 英寸 )软件环境:操作系统: Windows 8 64 位 (DirectX 11)VC+6.0

2、开发环境:指导教师评语:成绩:签字:日月年课程设计任务书No.1文章编辑系统一、课程设计前言1. 程序设计的目的本课程设计是为了配合数据结构课程的开设,通过设计一个完整的程序,使学生掌握数据结构的应用、 算法的编写、 类 C 语言的算法转换成 C 程序并用 TC上机调试的基本方法。课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉及和课程相关的各个方面,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课程更全面的学习和应用, 理解和掌握课程的相关知识。数据结构是一门重要的专业基础课,是计算机理论和应用的核心基础课程。数据结构课程设计,要求学生在数据结构的逻辑特性和物理表

3、示、数据结构的选择和应用、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。文章编辑系统是一种简便快捷的对于输入的文章进行操作的方法,它可以统计文章的数字、空格和字母的个数等,以及查找和删除特定字符串。二、程设计方案论证2.1 设计思路根据课题文章编辑的详细要求,可将程序的运行分为三个模块,即文章统计模块、文章查找模块、文章删除模块。如图 1 所示。构造多个线性表,将输入的文章的每一行字符,都分别静态存储在相应的线性表中。每个线性表的存储容量不超过 80 个字符。文章输入结束后,程序输出指令菜单,列出程序可以合

4、法执行的操作指令,并选择输入合法的指令,以执行相应的指令操作。课程设计任务书No.2统计文字统计字符文查找字符章编辑系统删除字符图 1 功能模块图依照课题要求,程序设计了 6 大功能,分别为统计文章中总字符数、统计文章中空格个数、统计文章中数字个数、统计文章中英文字母个数、删除文章中指定字符串、统计文章中指定字符串出现次数,并且为每一项功能提供相信的执行指令。程序的执行流程如图 2 所示。首先按要求输入文章,然后按照指令菜单选择要执行的指令,程序判断指令,并且执行相应的指令操作,输出指令执行结果后,重新返回指令菜单,再次等待指令输入。指令书输入和指令执行为无限循环,在用户退出程序前,程序不会自

5、动结束课程设计任务书No.3图 2 程序的执行流程图2.2 函数功能分析1.定义结构体struct line,文本行采用顺序存储,行与行之间采用链式存储typedef struct linechar *data;struct line *next;NE;LI存储结构:采用单链表结构存储文章,没几个点存储一行,每行最长不超过 80 个字符。LINE 为单链表为单链表存储结构, 以节点的序列表示的线性表叫做单链表,单链表是链式存取的结构, 是用一组地址任意的存储单元存放线性表中的数据元素。 链表中的数据是以节点来表示的, 每个节点的构成: 元素就是存储数据的存储单元,指针就是连接每个节点的地址数据

6、。课程设计任务书No.42.主要函数:( 1)统计文章总字数: void CountAll(LINE * &head)本函数的作用就是统计文章所有的字符数,包括空格。将 p 付给表头指针;初始化 count 为 0;用 do-while 语句遍历链表,同时统计字符串中总字数;用 printf 语句输出文章中总字数。( 2)统计文章中的空格数: void CountSpace(LINE * &head)本函数的作用就是统计字符串链表中的空格数。将 p 付给表头指针;初始化 count 为 0;用 do-while 语句遍历链表,同时统计字符串中空格数;用 printf 语句输出文章中空格数。(

7、3) 统计文章中数字个数: void CountNumber(LINE * &head)本函数的作用就是统计字符串链表中的数字个数将 p 付给表头指针;初始化 count 为 0;用 do-while 语句遍历链表,同时统计字符串中数字个数;用 printf 语句输出文章中数字个数。流程如图 3( 4) 统计文章中英文字母数: void CountLetter(LINE * &head)本函数的作用就是统计字符串链表中的英文字母个数。将 p 付给表头指针;初始化 count 为 0;用 do-while 语句遍历链表,同时统计字符串中英文字母数;用 printf 语句输出文章中英文字母数。(

8、5)查找字符串的函数: void FindString(LINE * &head)本函数的作用就是查找在链表中出现的特定的字符串。将 p 付给表头指针;初始化 count 为 0;初始化 len1,用来保存当前行的总字符数;课程设计任务书No.5定义整型变量 len2 表示待统计字符串的长度;用 printf 语句提醒用户输入要统计的字符串;用 do-while 语句遍历链表,同时用 for 循环和 if 语句找出指定字符串在文章中出现的次数;用 printf 语句输出指定字符串在文章中出现的总次数。流程如图4( 6)删除字符串的函数: void DelString(LINE * &head)

9、本函数的作用就是将在链表中出现的特定的字符串进行删除。先创建一个 delstringword,其中包含两个字符串char *s 和 char *str,用 *s 表示输入的字符串, *str 表示要删除的字符。这个函数的功能是找到字符串 s 在字符串中出现的位置并删除该字符串。定义字符串的删除函数 DelString(),用 do-while 语句遍历链表,语句中再套用 if 语句,并调用 delstringword()进行删除课程设计任务书No.6开始*p=head , count=0int len=str len ( p-data )i=0Nidatai=48 &p-datainextN!

10、p=NULL结束图 3 统计数字函数流程图课程设计任务书No.7开始count=0;h=0;len1=0;i+p-datai=strN0Yk=0;j=Np-datai+j=strjYk+;j+Nk=len2Ycount+;i=i+k -1;结图 4 统计 str 在文章中的出现次数三、课程设计运行结果与分析3.1 课程设计运行结果本实验所要实现的功能:输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过 80 个字符,共 N 行;课程设计任务书No.8要求:( 1)分别统计出其中英文字母数和空格数及整篇文章总字数;( 2)统计某一字符串在文章中出现的次数,并输出

11、该次数;( 3)删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能;输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。输出形式:( 1)分行输出用户输入的各行字符;( 2)分 4 行输出全部字母数、数字个数、尠空格个数和文章总字数输出删除某一字符串后的文章;用链表存放数据非常灵活,只要内存足够大,对链表可以做任意扩充和修改。主要的手段为链表的遍历。定义一个头指针 head,每个结点的数据域存放数据本身,指针域存放下一个结点地址,所以,我们只要知道 head,就可以遍历整个链表,找到我们所需要的字符(串),进行相应的操作。下面是源程序的初始界面,如图 5 所示:图 5 初始界面课程设计任务书No.9在运行的界面上输入文章,运行后会出现如图6 所示的运行界面 。图 6 运行界面在运行界面上输入1:统计字符数,如图7 所示:课程设计任务书No.10图 7 统计字符界面在运行的界面

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

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

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