数据结构课程设计文章编辑器

数据结构课程设计文章编辑器

1.课程设计目的

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,文章编辑软件给了人们很大的方便。数据结构主要分析待处理的对象的特性以及各处理对象之间存在的关系。建立数学模型的线性数据结构,来解决线性表的线性关系。它包括网络、集合代数论、格、关系等方面。

     这次课程设计的任务是简单的做一个文章编辑程序,一共分为5个模块,能统计出文字、数字、字符串空格的个数,能删除某一个字符。根据这些功能,程序需要分别调用函数stdiostdlibmallocstringconio,给出了一些简单的定义,如blackletterwordnumberstring等的定义。程序主要运用了模块化思想,运用顺序串和线性表来解决问题。而这些问题都可以用数据结构的知识来实现,这是个可性行的设计方案。

2.课程设计的主要的内容和功能:

输入一页文字,程序可以统计出文字、数字、空格的个数。

静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。

存储结构使用线性表,分别用几个子函数实现相应的功能;

输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出统计的文章里面"全部字母数""数字个数""空格个数""文章总字数"3)输出删除某一字符串后的文章。

3.设计方案论证

3.1程序详细设计

根据程序所具有功能可以分成以下十个功能模块:

3.1.1 void initstring() 初始化函数:初始化、创建一个空串;

3.1.2 void assign() 赋值函数:对所创建串进行赋值;

3.1.3 void C_letter() 字母统计函数:对所输入的文章进行字母统计,并按一定的

格式输出文章中的字母个数:字母的数目可根据字符的ASCⅡ值来确定,从文章的第一个字符开始,判断其ASCⅡ值是否在英文字母所处的ASCⅡ值之中,如果是,此时的letter累加1;否则,letter值不变.接着比较下一个字符,直到遇到Enteri大于字符串的长度,最后输出统计结果。

3.1.4 void  C_blank() 空格统计函数:对所输入的文章进行空格统计,并按一定的

格式输出文章中的空格个数:空格的数目可直接从文章的第一个字符开始,逐个比较字符的ASCⅡ值是否与空格的ASCⅡ相等;相等,则:blank(空格数)累加1;负责blank的值不变。接着比较下一个字符,直到遇到Enteri大于字符串的长度,最后输出统计结果。

3.1.5 void  C_word() 字数统计函数:对所输入的文章进行字数统计,并按一定的格式输出文章中的总字数:单词的数目可以由非字母字符出现的次数决定。如果测出某一字符为字母,而它前面的字符为非字母,则表示“新的单词开始了”,此时使单词数累加。如果当前字符为字母而其前面的字符也是字母,则意味着仍然是原来那个单词的继续,单词不应再累加1。前面一个字符是否非字母可以从fag的值可以看出来,fag 0,则表示前一字符是非字母;如果fag1,意味着前一个字符为字母。

3.1.6 void C_number() 数字统计函数:对所输入的文章进行字数统计,并按一定的格式输出文章中的数字个数:数字的数目可根据字符的ASCⅡ值来确定,从文章的第一个字符开始,判断其ASCⅡ值是否在数字(1--9)所处的ASCⅡ值之中,如果是:此时的num(数字数)累加1;否则:num值不变.接着比较下一个字符,直到遇到Enteri大于字符串的长度,最后输出统计结果。

3.1.7 void C_string() 字符串统计函数:程序运行后,从输入端输入任意一字符串,将会统计该字符串在文章中出现的次数,并按一定的格式输出该字符串在文章中出现的次数:利用输入函数,输入任意一字符串string,并将其长度赋给si,在主串S中从i(i的初始值为0)个字符起,长度和串string相等的子串,比较的过程中用j(j的初始值为0)指向字符串string的第j号字符,一次比较结束后,如果j>=si,则表示在主串S中找到一个与串string相等的子串,此时使strnum(字符串个数,其初始值为0)1,j=0;直到条件i小于等于主串长度s->len不成立。

3.1.8 void Del_str() 字符串删除函数:程序运行后,从输入端输入任意一字符串,将会在文章中删除所有该字符串,并将其后的文章内容前移,最后输出删除该字符串后的文章内容。

main( )函数外用typedef定义一结构体的类型st,并定义全局结构体类型变量ss,然后将该程序分成十个模块,首先用main( )函数在各自模块中进行调用初始化函数,创建一空串,接着调用赋值函数对其赋值;赋值完毕后,按Enter键输出“人性化”的界面,然后调用选择功能函数,根据“人性化”的提示输入指令代码,执行相应的操作。

    各模块自定义一函数,自定义的子函数包括:初始化函数、赋值。用的函数有字母统计函数、空格统计函数、字数统计函数、数字统计函数、标点符号统计函数、字符串统计函数、字符串删除函数以及功能选择函数等。

    模块之间的调用关系图如下:若图片无法显示请联系QQ3249114,课程设计数据结构文章编辑器系统免费,转发请注明源于www.751com.cn     102

[1] [2] [3] [4] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有