文件信息统计系统.docx
《文件信息统计系统.docx》由会员分享,可在线阅读,更多相关《文件信息统计系统.docx(17页珍藏版)》请在冰豆网上搜索。
文件信息统计系统
xxxxxxxxxx高级语言程序课程设计
文件信息统计系统C语言程序设计
学生姓名
x
学号
x
所在学院
通信工程学院
专业名称
通信工程
班级
xxxxxxxxx
指导教师
x
成绩
Xxxxxxxxxxxxxxxx
二○一四年十二月
课程设计任务书
学生姓名
x
学生学号
x
学生专业
通信工程
学生班级
xxxxxxxxx
指导教师
x
职称
讲师
发题日期
2014年11月1日
完成日期
2014年12月5日
设计题目
文件信息统计系统C语言程序设计
设计目的:
1通过课程设计,熟悉C语言的应用强化对C语言的理解进一步掌握其中的数据结构和知识。
2会运用控制程序的编写,培养了C语言应用的实际操作能力
3独立思考和解决编程过程中的问题,设计出方便实用的程序。
具体任务及要求:
1遵循软件开发过程的基本规范,能灵活应用。
2初步具备C语言的实际操作能力
3运用结构化程序的方法,按照课程设计的要求完成。
4能够设计、编写代码和测试C程序过程。
5功能模块划分清晰,系统结构图符合功能模块的要求。
课程设计进度安排:
序号
内容安排
时间
1
收集资料,确定实施方案。
10.18
2
软件设计。
11.20
3
整理资料,编写设计报告。
12.1
4
定稿,打印报告。
12.10
课程设计参考文献:
[1]谢希仁:
计算机网络,电子工业出版社,2008.2,P131-P145
[2]朱蓉、魏元旺:
C/C++程序设计案例教程,清华大学出版社,2012.8,P29-P31
[3]李丽娟:
C语言程序设计教程,人民邮电出版社,2009.3,P153-P161
指导教
师签字
院长审核签字
文件信息统计系统C语言程序设计
内容摘要:
文件信息统计系统是一种为了方便各种文件信息的统计调用以及管理的C语言程序,其程序主要包括文件的内容的输入并统计文件信息的关键词、字数、行数、页码、字符数等信息。
该系统程序实现了文件统计管理的一体化流程,实现了包括数据的录入、查询、统计以及审核等功能,方便了文件的调用以及管理和统计,极大地提高了统计的效率和准确性,使用方便快捷,非常实用,适用于各种机构的文件信息统计。
关键词:
文件信息 统计管理C语言
FileinformationstatisticssystemofClanguageprogramdesign
Abstract:
FileinformationstatisticalsystemisakindofClanguageprogramfortheconvenienceofcallstatisticsandmanagementofvariouskindsoffileinformation,whichincludethecontentsofthefileinputandstatisticsofkeywords,numberofwords,linenumber,pagenumber,numberofcharactersandotherinformationoffileinformation.
ThesystemapplicationmakestheIntegrationofthestatisticsandmanagementofthefilescometrue.Itmakesthecallsandmanagementstatisticsoffileconvenientandimprovetheefficiencyandaccuracygreatly.Thesystemapplicationiseasytouseandverypractical.itapplytoallkindsofinstitutions'fileinformationstatistics
Keywords:
FileinformationStatisticalmanagementClanguage
文件信息统计系统C语言程序设计
前言
文件信息统计系统作为一种对文件信息内容进行快捷统计和管理在社会的各个领域已经十分普遍,该程序极大地提高了办公效率和准确性,方便快捷,操作简单,使文件信息管理统计的流程实现更加完善简洁。
本程序设计主要包括了数据录入、检漏查询、数据验收、数据统计、时间管理、批量审核和计算以及高级查询等信息模块,各个模块由C语言主函数和各个子函数来实现,程序流程简单,成本低,应用性能高,这也是文件信息统计系统应用普遍的原因之一。
1文件信息统计系统的方案设计
本文件信息统计系统要实现多种功能模块,遵循结构化程序设计思想将该系统划分为各个功能的子模块来实现该系统最终的统计管理。
1.1文件信息统计系统的结构
文件信息统计的结构主要包括了数据录入、检漏查询、数据验收、数据统计、时间管理、批量审核和计算以及高级查询等信息模块,如图1-1文本信息统计系统结构流程图所示:
图1-1文本信息统计系统结构流程图
1.2模块功能说明
(1)数据录入:
录入需要的统计和管理的文本信息并将信息保存于文件中,以方便日后进行打印、读取、更新等功能,该模块将文件按照一定的顺序进行录入,一是按照文件的内容信息进行录入,二是按照文件的录入时间和录入序号进行录入并保存文本的信息。
(2)检漏查询
对已存入的文本信息进行检查,如若发现信息的缺失,则提示更改和完善信息内容。
(3)数据统计
对已存入的文本信息内容进行的统计包括关键词、字数、行数、页码、字符等信息。
(4)时间统计
对已存入的文本信息的时间进行统计,方便以后对文件进行调用时使用时间查询以便快速地找到该文件。
(5)批量审核及计算
对已存入的文本信息内容进行审核,通过搜索关键词和特殊字符的方法对文件内容进行审核,对于用于计算的文本信息,例如人数统计或者工资结算等信息则计算之后再保存。
(6)高级查询
用户通过高级查询功能,按照指定的条件在文本信息系统中进行查询,准确性高,易于查找。
此模块查询有三种方法,一是按照序号进行查询,二是按照姓名进行查询,三是按文本信息内容进行查询。
1.2.1各主模块的程序流程图
本程序设计主要是由添加模块、删除模块、排序模块等主要模块进行功能的实现。
(1)添加模块:
本模块包含了输入功能,主要是实现对文件信息的输入。
保存功能,主要是对已输入的文件信息进行实时保存。
更新功能,对文本信息的内容进行差错检漏并提示修改,对内容信息更新。
该模块的主要流程图如图1-2中所示:
是是
图1-2添加模块流程图
(2)删除模块:
本模块包含了查询功能、读取功能、删除功能和更新功能。
查询功能主要是通过输入有关文件的信息来实现文件的查询。
读取功能分为两种,一种为只读类型,一种为可读可修改类型。
删除功能是将文件的内容或者文件进行删除。
更新功能,对文本信息的内容进行差错检漏并提示修改,对内容信息更新。
该模块的主要流程图如图1-3中删除模块流程图所示:
是
否
是
否
是
否
图1-3删除模块流程图
(3)统计模块:
本模块的功能只要包括统计功能、排序功能和打印功能。
统计功能主要实现了文本信息的统计和存储,排序功能为保存的文件进行排序方便以后查找,打印功能直接将文件内容打印。
该流程图如图1-4中所示、:
否
是
否
是
否
是
否
是
图1-4统计模块流程图
2主函数之间的相互调用
根据文件信息统计的需求,本系统具有对文件信息的添加、查找、删除、更新以及统计的管理操作等基本功能,以方便对文件信息的各项管理操作,每一条信息包括文件的关键字、主要内容、文件录入的时间以及文件编号等信息,系统各个功能模块都由函数的形式来实现,可以将文件的信息保存,并从文件中读取出来。
本程序是由C语言来实现的,其功能多次使用函数的调用以及函数嵌套调用。
函数调用如图2-1中所示:
图2-1主函数之间的相互调用
3程序说明与调试过程
3.1各模块程序编译界面
首先,进入运行界面首页如图3-1中所示,根据提示选项包括录入功能、修改功能、删除功能查询功能等选项进行选择。
图3-1运行程序首页
输入选择1录入功能,将要录入的信息输入,如图3-2中所示:
图3-2录入功能运行界面
输入选择2修改功能,如图3-3中所示,对文件的信息进行修改:
图3-3修改功能运行界面
输入选择3删除功能,如图3-4中所示,把文件中的信息删除:
图3-4删除功能运行界面
输入选择4,如图3-5中所示,再按照提示选择查询方式,最后调出文件信息:
图3-5查询功能输出界面
3.2程序运行中的注意事项
1)程序在运行前需加入一个初始化函数,在启动程序去执行显示功能,否则可能会出现一些乱码的现象。
2)在没有输入任何信息的情况下,程序不能执行查询、修改、删除、统计和排序等功能。
3)要注意全局变量的应用。
4)在查询模块中,定义变量要定义为字符串数组的形式,否则可能会造成程序无法运行等问题。
此程序在处理文件信息方面还不够完善,另一方面就是在运行此程序的时候,需要执行操作的提示语不够完善。
对于本程序的改进方法,我认为可以在文件信息的处理和查找方面结构体中再细化,进一步提高要查找文件和统计文件的准确性。
4结束语
首先,经过了数周的课程设计编程,我对C语言有了进一步的认识,想要编写一个准确、高效并且有实用价值的程序,一定要先对课本上的知识熟悉,还必须要掌握一定的上机操作技巧,程序的关键在于调试程序,这次课程设计,在C语言实际应用的方面取得了宝贵的经验。
第二,通过此次的课程设计,我也认识到了自己在编程方面的不足和容易犯的错误,通过复习以前的知识,更重要的是培养独立思考和解决问题的能力,熟悉在编程过程中的操作,和解决问题的方法。
最后,感谢指导老师为我在编程过程中遇到问题悉心教导,叫我如何调试程序和完善程序,在我完成了这个课程设计中给了我很大帮助,也在我的C语言学习进一步巩固了知识。
附录
附录1:
文件信息统计函数
#include
定义全局变量,统计多有文件的字符数、字数和行数
intcharcount,wordcount,linecount;
voidCountLWC(char*filename)
{
FILE*fp;
charc;
/*定义三个计数器,分别统计字符数、字数和行数*/
intcharnum,wordnum,linenum;
/*初始化计数器*/
charnum=0;
wordnum=0;
linenum=0;
/*以只读方式打开文件*/
if((fp=fopen(filename,"r"))==NULL)
{
printf("Can'topenthefile%s.\n",filename);
return;
}
c=fgetc(fp);
while(c!
=EOF)
{
charnum++;
if(c=='\n'||c==''||c=='\t')
{
/*如果第一个字符是空格则不计字数*/
if(charnum!
=1)
wordnum++;
}
if(c=='\n')
{
/*如果第一个字符是空格则不计行数*/
if(charnum!
=1)
linenum++;
}
c=fgetc(fp);
}
charcount+=charnum;
wordcount+=wordnum;
linecount+=linenum;
printf("******Thefile%s*****\n",filename);
printf(">>Lines= %d\n",linenum);
printf(">>Words= %d\n",wordnum);
printf(">>Chars= %d\n",charnum);
fclose(fp);
}
附录2:
主函数
voidmain(intargc,char**argv)
{
intn=argc;
if(argc<2)
printf("Pleaseinputthecommand:
43file1file2...filen");
/*初始化全局变量*/
charcount=0;
wordcount=0;
linecount=0;
/*依次统计每个文件的信息*/
while(--n>0)
CountLWC(*(++argv));
/*输出所有文件的统计信息*/
if(argc>2)
{
printf("\nTheinformationinallfilesis:
\n");
printf(">>Lines= %d\n",linecount);
printf(">>Words= %d\n",wordcount);
printf(">>Chars= %d\n",charcount);
}
getch();
}
附录3:
删除函数的调用
intdel_by_name()
{
/*删除文件*/
chardel_name[],i,f=0;
printf(“\n\npleaseinputthename:
”);/*输入文件名*/
scanf(“%s”,del_name);
for(i=0,i{
if(strcmp==0)
{
num=1;
printf(“%s该文件已经删除”);
f=1;
break;
}
}
/*如果找不到该文件的信息*/
if(f==0)
printf(“\n\n找不到该文件信息\n\n”);
getchar();
return0;
}
/*按文件的编号进行查找*/
intdel_mun()
{
intdel_num=0,i,f=0;
printf(“请输入文件的编号”);
scanf(“%d”,&del_num);
for(i=0;i{
if(num==del_num);
追加函数的调用
insert_message()
/*添加文件信息*/
{
inti=sum;
intflag=0;
charchoice;
clrscr();
printf(“\n\n输入文件信息的内容\n\n”);
scanf(“%d”,&insert_message);
}
}
附录4:
文件内容统计输出图形
参考文献
[1]谢希仁:
计算机网络,电子工业出版社,2008.2,P131-P145
[2]朱蓉、魏元旺:
C/C++程序设计案例教程,清华大学出版社,2012.8,P29-P31
[3]李丽娟:
C语言程序设计教程,人民邮电出版社,2009.3,P153-P161
成绩评定表
学生姓名
x
学生学号
x
学生专业
通信工程
学生班级
xxxxxxxx
指导教师
x
职称
讲师
设计题目
文件信息统计系统C语言程序设计
评
语
评定成绩
等级
分数
指导教师签字:
年月日
说明:
分数采用百分制,相应的等级为:
优:
90~100:
良:
80~89;中:
70~79;及格:
60~69;不及格:
60分以下。