数据结构课程设计文章编辑附录中有全部代码完整版文档格式.docx
- 文档编号:18781850
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:10
- 大小:40.54KB
数据结构课程设计文章编辑附录中有全部代码完整版文档格式.docx
《数据结构课程设计文章编辑附录中有全部代码完整版文档格式.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计文章编辑附录中有全部代码完整版文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
;
(3)查找出指定字符串在文章中出现的所有地方并替换,输出替换后结果;
(4)输出删除某一字符串后的文章;
实现提示
存储结构使用线性表,分别用几个子函数实现相应的功能,并且使用菜单的形式,可以选择所要进行的操作(查找、替换、删除、统计等)。
文章编辑系统
1概要设计
本次课程设计的题目是文章编辑系统,本系统的功能描述如下:
用户新建文本、浏览新建文本、文本字符统计、指定字符串统计、指定字符串删除、指定字符串替换等操作。
1.新建文本
2.浏览输入文本
3.文本字符统计
4.指定字符串统计
5.指定字符串删除
6.指定字符串替换
7.退出系统
本系统包含七个功能模块,分别为:
新建文本模块,浏览输入文本模块,指定字符串统计模块,指定字符串删除模块,指定字符串删除模块,指定字符串替换模块以退出系统模块。
新建文本模块实现用户录入文本信息,并且系统自动保存录入信息。
浏览输入文本模块实现了显示用户录入信息的功能。
指定字符串统模块实现了对英文字母数和空格数及整篇文章总字数的统计。
指定字符串统计实现了统计用户自定义字符串个数的功能。
指定字符串删除模块实现了对用户自定义字符串的删除。
指定字符串替换模块实现了替换用户自定义字符串为用户定义的新字符功能。
退出系统模块实现了退出系统功能。
图系统功能模块图
2详细设计
这部分详细介绍了系统中主要部分的功能实现,以及代码功能说明。
voidCreate(LINE*&
head)
{
printf("
请输入一页文章,以Ctrl+E为结尾(每行最多输入80字符!
):
\n"
);
earch'
musthaveclass/struct/uniontype
错误类型:
指针符号使用错误
改正方法:
将(stu,s)更改为s->
search(stu,s)
(3)错误提示:
errorC2676:
binary'
>
'
:
'
classstd:
:
basic_ofstream<
char,structstd:
char_traits<
char>
>
doesnotdefinethisoperatororaconversiontoatypeacceptabletothepredefinedoperator
文件流输入输出符号使用错误,错误使用>
作为文件写入操作符。
将>
改为<
<
。
4测试结果
测试项目
测试数据
测试结果
登陆界面
7.退出
显示:
新建功能
输入1:
新建文本
Abcdefg1234567
显示功能
输入2:
浏览输入文本
显示用户录入结果:
Abcdefg1234567
统计功能
输入3:
文本字符统计
文章统计信息结果:
全部字母数:
7
数字个数:
空格个数:
1
文章总字数:
15
指定字符串统计功能
输入4:
指定字符串删除
输入要统计字符串:
Ab
出现次数:
指定字符串删除功能
输入5:
指定字符串删除
输入要删除字符串:
删除后文本文件如下:
cdefg1234567
指定字符串替换功能
输入6:
指定字符串替换
要替换掉的字符串:
cdefg
要替换成的字符串:
!
替换后文本文件如下:
1234567
5使用说明
本系统开始时显示所有选择项。
选择项采用文字提示,数字选择进行选择操作。
图显示运行界面
录入选项:
图新建文本界面
浏览输入文本
图浏览输入文本界面
图文本字符统计界面
指定字符串统计
图指定字符串统计界面
图指定字符串删除界面
指定字符串替换
图指定字符串替换界面
输入7:
退出
图退出界面
6总结
感谢老师的指导和讲解。
通过老师的讲解,让我对这门课程有了深刻的认识和了解,也让我对这门课程有了重新的认识。
通过近两周的课程设计中,我学到了数据结构程序设计中对类的设计方法,及对磁盘文件的操作,从中理解了数据结构中的设计思想。
经过这次集中上机实习,我充分意识到了数据结构的用途是非常广的,功能也非常强大,是学计算机不可缺少的知识;
更重要的是,在这次编程中熟悉了编写一个比较复杂程序的流程,以及发现问题、解决问题的能力,为了下一次学习一门新的计算机语言做了充分准备。
在之前感觉还是遥不可及的功能,现在可以实现了,这自然要感谢老师和同学们的热心帮助,这是我得以及时完成这个程序的重要因素。
最后还是要感谢老师对我们孜孜不倦的教导。
成绩:
预习报告分,系统分,课设报告分,总分分,总评:
评语:
批阅教师签字:
年月日
附录:
全部代码
#include<
typedefstructline
char*data;
structline*next;
}LINE;
LINE*p=newLINE;
/*首先为链表建立一个附加表头结点*/
head=p;
/*将p付给表头指针*/
charch[100];
while
(1)
{
gets(ch);
/*输入字符串!
*/
if(strlen(ch)>
80)
printf("
每行最多输入80字符"
break;
}
if(ch[0]==5)break;
/*如果发现输入^E,则退出输入*/
p=p->
next=newLINE;
p->
data=newchar[strlen(ch)+1];
/*为结点分配空间*/
strcpy(p->
data,ch);
if(ch[strlen(ch)-1]==5)/*除去最后一个控制符^E*/
{
data[strlen(ch)-1]='
\0'
;
break;
next=NULL;
/*最后的一个指针为空*/
head=head->
next;
}
/**文本字数统计**/
intCount_Space(LINE*&
head)新建文本\n"
\n"
2.浏览输入文本\n"
3.文本字符统计\n"
4.指定字符串的统计\n"
5.指定字符串的删除\n"
6.指定字符串的替换\n"
7.退出\n"
****************************************************************\n"
请输入功能序号:
"
scanf("
%s"
ID);
while
(1)
{
if(strcmp(ID,"
1"
)==0)
{
printf("
新建文本要覆盖已有文本,是否继续输入?
(Y/N)\n"
getchar();
scanf("
%c"
&
ch);
system("
cls"
if(ch=='
n'
||ch=='
N'
)
break;
elseif(ch=='
y'
Y'
Create(head);
break;
}
elseif(strcmp(ID,"
2"
OutPutTxt(head);
3"
Count(head);
4"
请输入要统计的字符串:
sch);
出现的次数为:
%d\n"
Find_Word(head,sch));
5"
请输入要删除的某一字符串:
tmp_sch);
Del_String(head,tmp_sch);
删除后"
6"
请输入要替换掉的某一字符串:
tmp_rch);
请输入要替换成的字符串:
reh);
Replace_String(head,tmp_rch,reh);
替换后"
7"
你确定要退出系统吗?
)exit(0);
else
您输入字母有错,请重新输入!
\n\n"
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程设计 文章 编辑 附录 全部 代码 完整版