- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
青岛农业大学
理学与信息科学学院
高级语言课程设计报告
设 计 题 目 文本编辑器
学生专业班级 计算机科学与技术
学生姓名(学号)
设计小组其他同学姓名(学号)
指 导 教 师
完 成 时 间 2011-11-03
设 计 地 点 信息楼机房
2011年 11 月 05 日
一、课程设计目的和任务
???? 为了方便处理文本内容,减少在处理文本时的额外活动,设计了本程序。比如在统计文本中的中英文字母数和空格数以及整篇文章的总字数时,可以利用本程序,这样比较方便、省时。又比如统计某一字符串在文章中出现的次数,并输出该次数,也可利用本程序。还可以利用本程序将文本的某一子串删除并将后面的字符前移。
二、分析与设计
1.程序的基本功能:
(1)分别统计出其中英文字母数和空格数以及整篇文章的总字数。
(2)统计某一字符串在文章中出现的次数,并输出该次数。
(3)删除某一子串,并将后面的字符前移。
2.系统总框图:
(1)、统计字符个数算法流程图
i=0 n=0
i=0 n=0
iN i=N
j=0 len=strlen(wz[i])
jlen j=len
if(wz[i][j]=n1
wz[i][j]=n2)
n++
j++
i++
return n
算法结束
(2)、删除某一字符串算法流程图
i++;i=0 n=0
i++;
i=0 n=0
iN i=N
c=strstr(wz[i],s)
c!=0 c=0
leni=strlen(wz[i]);
lenc=strlen(c);
p=leni-lenc
return n
算法结束
for(k=1;k=lens;k++)
{for(j=p;j=leni;j++)
wz[i][j]=wz[i][j+1]; leni=strlen(wz[i]) wz[i][j-1]=\0;
leni=strlen(wz[i]);}
(3)、查找某一字符串出现的次数算法流程图
i=0 n=0
i=0 n=0
iN i=N
c=strstr(wz[i],s)
c!=0 c=0
c=strstr(c+lens,s)
n++
i++
return n
算法结束
3.定义的函数及说明:
此程序由12个函数构成。 (1)存储结构:char wz[N][80]
存储文章的字符数组 ,为全局变量
(2)输入函数:readdat()通过此函数从文件中读取文本
(3)输出函数:out()将文本内容输出
(4)字符数统计函数:int countword(int n1,int n2)
统计ASC 码在n1与n2之间的字符
(5)字符串出现次数统计函数: int cz(char *s)
查找某一字符串出现的次数
(6)字符删除函数:void del(char *s)删除要删除的字符串
(7)主函数:void main()通过主函数调用各个子函数完成程序功能
(8)文件函数open(E:/yy/wzin.dat,r+)打开文件
(9) 字符串位置函数strstr(wz[i],s);字符串s 在文章第i行首次出现的位置
(10) 字符串长度函数strlen(wz[i]);文章第i 行的长度
(11) 字符串比较函数strcmp(s1,@@)比较字符串内容当为@@时停止输入
(12) 字符串复制函数strcpy(wz[i],s1);/*将s1中的内容复制到wz[i]中
4.算法设计:
本程序要求储存结构为线性表结构,可以输入大小写的英文字母,任何数字和标点符号。输出的时候要分行输出用户输入的各行字符,分四行输出“全部字符数”“数字的个数”“空格个数”“文章总字数”及输出删除某一字符串后的文章。
三、系统实施
1.源程序代码
#includestdio.h
#includestring.h
#define N 20 /* 文章的行数 */
char wz[N][80]; /* 存储文章的字符数组 ,为全局变量*/
/*输入函数*/
void readdat()
{FILE *fp;
int i,j,len;
文档评论(0)