《2022年文编辑管理系统课程方案实验报告.docx》由会员分享,可在线阅读,更多相关《2022年文编辑管理系统课程方案实验报告.docx(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用程序设计基础及数据结构课程设计设计题目: 文章编辑治理系统专系院) :经济治理学院 2022 年1 业:信息治理与信息系统班级:信管 1111学年学期 : 2022 2022 学年 第 1 学期月 11 日名师归纳总结 - - - - - - -第 1 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用课程设计任务书课程设 计题目英文编辑治理 1)培育同学正确的设计思想,将理论与实际相结合,庄重认真、实事求是的科学态度和勇于探究的创新精神;2)培育同学综合运用所学学问与生产实践
2、体会,分析和解决工程技术问题的才能;课程设 计目的3)通过课程设计实践,建立系统设计的整体思想,锤炼编写程序、调试程序的才能,学习文档编写规范,培育独立学习、吸取他人经验、探究前言学问的习惯;同时,C+语言程序设计课程设计可以充分补偿课堂教案及一般试验中学问深度与广度有限的缺陷,更好地帮 助同学从全局角度把握课程体系;课程设 计环境硬件: P4以上运算机 软件: Visual C+/Turbo C Microsoft Windows XP 任务:用 C语言对同学成果进行编程;要求: 1 、要充分熟识C+语言程序设计课程设计的重要性,仔细做好各项预备工作;既要虚心接受老师的指导,又要充分发挥主观
3、能动 课程设 性,要结合课题,独立摸索,努力钻研,勤于实践,勇于创新;收集 计任务 资料,自学相关学问,拓宽学问面,依据课题的基本要求,自行完成 和要求 设计任务;要按时、独立完成规定的工作任务,不弄虚作假,不抄袭 他人;严格遵守学习和劳动纪律,不无故缺席,不迟到早退,不懈 怠,不拖拉,要积极主动;严格要求自己,树立庄重、严密、严谨的 科学态度,按时、按质、按量完成;工作进度方案01 序号起止日期工 作 内 容2022.12.312022.01.01 查找资料,熟识操作环境,开头编写程序02 2022.01.022022.01.03 编写程序,调试程序03 2022.01.042022.01.
4、05 写试验报告指导老师签字 Windows操作系统, visualc+ 6.0 编译环境3 概要设计3.1 各模块的算法设计说明本程序由输入、输出、统计、查找、删除、挑选功能模块组成,以下为重要模 块的流程图:名师归纳总结 - - - - - - -第 5 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用1.输入模块 2. 统计模块开头如为回车开头如为字母等待输入判定字符类型如为空格如为数字回车?记录行数记录空格记录数字记录字母个数个数个数将字符输入数组判定字符数量是否超出范畴终止输出 终止3.2 储备结构设计说明线性表是我们最常用的一种简洁而基本
5、的数据结构,线性表中数据元素间的关系是一对一的,就是说除了头尾数据元素外,其他元素都是首尾相接的;其规律结构简单,便于实现和操作,因此是一种在实际应用中广泛采纳的数据结构;4 具体设计为实现本程序功能所包含的库函数有:#include #include 为实现本程序功能所包含的功能模块及注释有:输出模块:代码:#include #include #include #include typedef struct line 名师归纳总结 - - - - - - -第 6 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用char *data; /字符串指针
6、需要时动态安排内存 struct line *next; LINE;void CreateTXTLINE * &head ; /创建一张链表,同时向里面输入文本数据 int Count_SpaceLINE * &head; /统计空格数 int Count_ZMLINE * &head ; / 统计字母数 int Count_All_WordLINE * &head ; /统计文章的总字数 int Find_WordLINE * &head,char *sch ; /统计 sch 在文章中显现的次数 int Count_NumLINE * &head ; /统计数字数 void Del_Str
7、ingLINE * &head,char *sch ; /删除指定的字符串 void OutPutTxtLINE * &head ; /向屏幕输出文章 void TjLINE * &head ; /统计 int read_textLINE * &head ;int free_linkLINE *&head ;int free_linkLINE *&head LINE *p=head;do p-data=NULL ;freep-data; whilep=p-next.=NULL ; head-next=NULL;return 0;void setcolorunsigned short color
8、 HANDLE hCon = GetStdHandleSTD_OUTPUT_HANDLE ; SetConsoleTextAttributehCon,color;void CreateTXTLINE * &head head=new LINE;LINE *end=head; LINE *p ; /第一为链表 建立一个附加表头结点 / head=p; /将 p 付给 表头指针 char tmp80; whiletrue getstmp; /输入字符串 .使用 C 的输入函数 iftmp0=5 break; /假如发觉输入 E,就退出输入 p=new LINE; p-data=new charst
9、rlentmp+1;/为结点安排空间 strcpyp-data,tmp; end-next=p;名师归纳总结 - - - - - - -第 7 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 end=p; iftmpstrlentmp-1=5 /除去最终一个掌握符 E p-datastrlentmp-1=0; break; p-next=NULL ; /是最终的一个指针为空; head=head-next; int Count_SpaceLINE * &head / 统计空格数 LINE *p=head; int asc_space=32; /空格
10、的 ASCIC 码值 int count=0; do int Len=strlenp-data; /运算当前 data 里的数据元素的个数 forint i=0;i ifp-datai=asc_space count+; /运算空格数 whilep=p-next.=NULL ; /遍历链表 return count;int Count_NumLINE * &head / 统计数字数 LINE *p=head; int count=0; do int Len=strlenp-data; /运算当前 data 里的数据元素的个数 forint i=0;i ifp-datai=48 & p-data
11、i count+; /运算数字数 whilep=p-next.=NULL ; /遍历链表 return count;int Count_ZMLINE * &head / 统计字母数 int count=Count_All_Wordhead; /总的字符数,包含空格 int space_count=Count_Spacehead; /空格数int num_count=Count_Numhead;/数字数 return count-space_count-num_count; /返回文章的字母总数int Count_All_WordLINE * &head / 统计文章的总字数名师归纳总结 - -
12、 - - - - -第 8 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 LINE *p=head; /储存链表的首地址 int count=0; /总字母数 do count+=strlenp-data; / 运算当前行内的字符数 whilep=p-next.=NULL ; /遍历链表 return count;int Find_WordLINE * &head,char *sch / 统计 sch 在文章中显现的次数 LINE *p=head; int count=0; / int h=0; int len1=0; /储存当前行的总字符数 i
13、nt len2=strlensch; /待统计字符串的长度 int i,j,k ; do len1=strlenp-data;/当前行的字符数 fori=0;i ifp-datai=sch0 k=0; forj=0;j ifp-datai+j=schj ifk=len2 k=k+1; count+;i=i+k-1 ; whilep=p-next.=NULL ; /遍历链表 return count;void del_string_wordchar *s,char *sch / *s 为输入的字符串 / *sch 为将要删除的字符 char *p=strstrs,sch; /查询结果 char
14、tmp80; int len=strlens; int i=len-strlenp; int j=i+strlensch; int count=0; forint k=0;k 名师归纳总结 - - - - - - -第 9 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用tmpcount+=sk ; forint kk=j ;kk tmpcount+=skk ; tmpcount=0; strcpys,tmp; /返回新的字符串void Del_StringLINE * &head,char *sch / 删除指定的字符串 LINE *p=head;
15、 do whilestrstrp-data,sch.=NULL del_string_wordp-data,sch; whilep=p-next.=NULL ; /遍历链表void OutPutTxtLINE * &head / 向屏幕输出文章 line *p=head; whilep.=NULL coutdatanext; /遍历 链表void DisplayLINE * &p,int i int j,k=0;coutdataendl;char ch10;coutch; forj=i ;j;j+ p-dataj=chk+ ; void DisplayLINE * &head,char *sc
16、h LINE *p=head; int count=0; / int h=0; int len1=0; /储存当前行的总字符数 int len2=strlensch; /待统计字符串的长度 int i,j,k ; do 名师归纳总结 len1=strlenp-data;/当前行的字符数第 10 页,共 14 页- - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 fori=0;i ifp-datai=sch0 k=0; forj=0;j ifp-datai+j=schj k=k+1; ifk=len2 count+; ifi break; co
17、ut 所在文章 ; whilep=p-next.=NULL ; /遍历链表 ifcout=0 cout没有找到您所要查找的内容 / 向屏幕输出文章 line *p=head; coutdata LINE *p=head; int count=0; / int h=0; int len1=0; /储存当前行的总字符数 int len2=strlensch; /待统计字符串的长度 int i,j,k ; do len1=strlenp-data;/当前行的字符数 fori=0;i ifp-datai=sch0 k=0; forj=0;j ifp-datai+j=schj 名师归纳总结 - - -
18、- - - -第 11 页,共 14 页精选学习资料 - - - - - - - - - ifk=len2 k=k+1;个人资料整理仅限学习使用 count+; break; ifi cout 所在文章 ; whilep=p-next.=NULL ; /遍历链表 ifcout=0 cout没有找到您所要查找的内容 / 统计 cout文章统计信息结果如下:endl; cout英文字母数: endl; cout空格数 : endl; cout文章中共显现数字: endl; cout统计文章的总字符 : setcolor10;LINE *head;int opt; whiletrue coutn *
19、 请 选 择 操 作*endl;cout1、新建 ;/储备模式:链表 没遇到回车就存放一个 一句话存放一个链表空 间)cout2、浏览 ;/链表的遍历 cout3、统计 ;/用三个函数三次遍历确定字母、数字、空格以及总共字符的数量 cout4、串统计 ;/通过遍历来确定所输入的字符串与文章一一比较 cout5、删除 ; cout6、查找 ; cout7、修改 ;cout8、退出 opt;第 12 页,共 14 页/ switch opt case 0: - - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 coutn * 请 选 择 操 作 *
20、endl;cout1、新建 ;/储备模式:链表 没遇到回车就存放一个 一句话存放一个链表空 间)cout2、浏览 ;/链表的遍历 cout3、统计 ;/用四个函数三次遍历确定字母、数字、空格以及总共字符的数量 cout4、串统计 ;/通过遍历来确定所输入的字符串与文章一一比较 cout5、删除 ; cout6、查找 ; cout7、修改 ;cout8、退出 opt;if opt.=1&opt.=2&opt.=3&opt.=4&opt.=5&opt.=6 couterror.不行识别选项 .; break; case 1: cout- 新建文本 -endl ;cout;CreateTXThead
21、;setcolor10;coutendl-endl;cout按回车调出主菜单 ;opt=0;break; case 2: cout- 浏览输入文本 -;OutPutTxthead;setcolor10;coutendl-endl;cout按回车调出主菜单 ;opt=0;break; case 3: 名师归纳总结 - - - - - - -第 13 页,共 14 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 cout- 文本统计 -;Tjhead;setcolor10;coutendl-endl;cout按回车调出主菜单 ;opt=0;break; case 4: cout-请输入要统计的字符串 -; char sch20; getssch; coutendl; coutsch显现的次数为 :;第 14 页,共 14 页cout-endl cout按回车调出主菜单 endl;- - - - - - -