欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计文字编辑器.docx

    • 资源ID:11007379       资源大小:138.54KB        全文页数:17页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构课程设计文字编辑器.docx

    1、数据结构课程设计文字编辑器数据结构课程设计报告学校:中南大学学院:信息科学与工程学院班级:计算机科学与技术1101班姓名:杜茂鹏课题:文字编辑器时间:2013年7月3日目 录1 设计目的2 问题描述3 设计要求4 设计构思5 算法说明6 测试结果7 总结反思8 源程序1设计目的1) 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2) 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3) 提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4) 进行全面综合的训练,对课堂教学、实验等环节的有益补充。5) 提高解决实际问题和培养软件工作所需的动手

    2、能力。6) 深化理解和灵活掌握教学内容7) 进行软件工程的综合训练。训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。2问题描述功能:输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能;3设计要求输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。输出形式:(1)分行输出用户输

    3、入的各行字符;(2)分4行输出全部字母数、数字个数、空格个数、文章总字数(3)输出删除某一字符串后的文章;4设计构思分别设计输入,输出,统计字母,统计数字,统计字符,查找,删除这7个函数,并在主函数中进行选择,没80个字符要添加换行符,并将输出结果和删除结果返回到一个txt文件中。文章存储在链表中,查找用模式匹配,删除字符用链表的节点删除法。统计用循环语句实现。5算法说明主函数统计函数输入函数输出函数输入文章创建文件循环遍历统计空格统计字母改写文件输出文章统计统计数字删除字符查找字符串结束6测试结果8总结反思通过本次课程设计,我对数据结构的理解进一步加深,我理解和掌握了每一段程序代码的功能及含

    4、义,并且能够实现文字编辑的主要功能:利用链表实现文字的存储问题,利用模式匹配查找字符串。学习数据结构,我学会如何将所学的知识运用到实际中,解决一些实际的问题,这才是学习的根本。 当然在实验中我也遇到了不少实际性的问题,编写的程度要与实际有联系,这就不能只依赖于课本,还要联系实际多多思考,重复调试,不断改进,才能编出一个符合实际的有价值的系统。9源程序#include #include#include #include/创造链表 typedef char DataType;typedef struct node DataType ch500; struct node *next;Lstring;

    5、 /输入函数Lstring *input() FILE*fp; if(fp=fopen(E:文字编辑结果.txt,w)=0) printf(打不开n); exit(0); Lstring *p,*head; int i=0,a=0; printf (*请输入一段文字,每行不超过80个字符,结束请按“#”*n); p=(Lstring *)malloc(sizeof(Lstring); head=p; p-chi=0; p-next=0; char str200; while(1) gets(str); if(strlen(str)80) printf(每行最多输入80个字符,请重启程序n);

    6、exit(0); if(str0=35) str0=0; p-ch0=str0; break; p-next=(Lstring *)malloc(sizeof(Lstring); strcpy(p-ch,str); if(strstrlen(str)-1=35) p-chstrlen(str)-1=0; break; p=p-next; p-next=NULL; i=0;while(1) fputc(p-chi,fp); i+; if(p-chi=0) break;fputc(n,fp);fclose(fp); return head; /输出函数 Lstring *OutPut(Lstrin

    7、g *head) Lstring *p=head; do printf(%sn,p-ch); while(p=p-next)!=NULL); return head;/统计字母函数 int Alphabet(Lstring *head) Lstring *p=head; int count=0; do int Len; Len=strlen(p-ch); for(int i=0;ichi=a&p-chichi=A&p-chinext)!=NULL); return count; /统计数字函数 int Num(Lstring *head) Lstring *p=head; int count=

    8、0; do int Len; Len=strlen(p-ch); for(int i=0;ichi=0 & p-chinext)!=NULL); return count; /统计空格函数 int Space(Lstring *head) Lstring *p=head; int count=0; do int Len; Len=strlen(p-ch); for(int i=0;ichi=32)count+; while(p=p-next)!=NULL); return count;/总字数函数 int All(Lstring *head) Lstring *p=head; int coun

    9、t=0; do count+=strlen(p-ch); while(p=p-next)!=NULL); return count;/串的简单模式匹配函数 int FindString(Lstring *head,char *str) Lstring *p=head; int count=0; int h=0; int len1=0; int len2=strlen(str); int i,j,k; do len1=strlen(p-ch); for(i=0;ichi=str0) k=0; for(j=0;jchi+j=strj) k+; if(k=len2) count+; i=i+k-1;

    10、 while(p=p-next)!=NULL); return count; /删除函数 void delstringword(char *s,char *str) int a=0; char *p; int count,len,i,j; char s180; p=strstr(s,str); len=strlen(s); i=len-strlen(p); j=i+strlen(str); count=0; for(int m=0;mi;m+) s1count+=sm; for(int n=j;nch,str)!=NULL) delstringword(p-ch,str); while(p=p

    11、-next)!=NULL); return head;/主函数 int main() int i=0; int m; Lstring *head; char s120,s220; head=input(); printf(输入的文章为:n); head=OutPut(head); printf(n); printf(n); printf( *统计结果* n); printf(n); printf( * 字母个数: %3d * n,Alphabet(head); printf( * 数字个数: %3d * n,Num(head); printf( * 空格个数: %3d *n,Space(hea

    12、d); printf( * 文章总字数:%3d * n,All(head); printf(n); printf(n); printf( *n); printf( * 请选择要执行的操作 *n); printf( *n); printf( * 统计字符串 选择1 *n); printf( * 删除字符串 选择2 *n); printf( * 退出 选择3 *n); printf( *n); do printf(请输入你要选择的操作(1-3):); scanf(%d,&m); switch(m) case 3: exit(0); break; case 1: printf(请输入要统计的字符串:); scanf(%s,&s1); printf(%s在文章中出现的次数为:%d n,s1,FindString(head,s1); printf(n); break; case 2: printf(请输入要删除的某一字符串:); scanf(%s,&s2); head=DelString(head,s2); printf(删除%s后的文章为:n,s2); OutPut(head); break; while(m!=0);


    注意事项

    本文(数据结构课程设计文字编辑器.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开