C语言课程设计报告 电子生词库软件

上传人:无*** 文档编号:84854412 上传时间:2022-05-04 格式:DOC 页数:25 大小:96KB
返回 下载 相关 举报
C语言课程设计报告 电子生词库软件_第1页
第1页 / 共25页
C语言课程设计报告 电子生词库软件_第2页
第2页 / 共25页
C语言课程设计报告 电子生词库软件_第3页
第3页 / 共25页
点击查看更多>>
资源描述
. .程序设计根底实训任务书题目:电子生词库软件学生:学号:班级:题目类型:软件工程R指导教师:一、设计目的1.进一步掌握和利用C语言进展程序设计的能力;2.进一步理解和运用构造化程序设计的思想和方法;3.初步掌握开发一个小型实用系统的根本方法;4.学会调试一个较长程序的根本方法;5.学会利用流程图或N-S图表示算法;6.掌握书写实训开发文档的能力书写实训报告;二、设计任务及容根据需要,建立属于自己的生词库,这样使用起来很方便。生词选自本人经常需要的单词,对于英文单词,给出中文含义,对于中文单词给出英文含义。功能要求:1创立生词库。用文件建立一个单词库,中英文单词均有,对于英文单词,给出中文含义,对于中文单词给出英文含义。2显示词库。显示所有单词和单词数、所有中文单词和单词数、所有英文单词和单词数,显示英文单词时按字母从小到大顺序排列。3编辑词库。首先确认密码后允许添加新词、删除旧词和修改旧词。4查找生词。显示所要查找的单词其及含义主菜单和子菜单能够循环出现,每一项菜单执行之后,询问用户是否继续进展。从子菜单可以返回主菜单。三、设计要求1.用C语言实现系统;2.系统具有统计、查询、排序等根本功能;3.系统的各个功能模块要求用函数的形式实现;4.文档:实训说明书每个学生一份,并装在统一的资料盒中; 5.光盘:每个学生文档和程序资料分别建在一个以自己学号和命名的文件夹下,并要求每班负责人汇总每个学生的文件放在以班级命名的文件夹下,刻录成一光盘,放在一个专门的资料袋中。四、提交的成果1. 设计任务书一份学校统一格式2. 设计说明书一份,容包括:1) 中文摘要100字,关键词3-5个。2) 实训题目、容、要求。3总体设计包含几大功能模块。4详细设计各功能模块的具体实现算法流程图5数据构造设计描述,各模块函数的功能介绍,参数说明等。6调试分析包含各模块的测试用例,及测试结果。7总结实训完成了哪些功能,还有哪些地方需要改进,及通过实训有何收获,调试程序的体会等8) 参考文献、致等。五、主要参考资料1. 王连相C/C+程序设计 大学2.谭浩强C语言程序设计(第2版)学习指导清华大学3. 莉,龚义建C语言程序设计实训指导教程华中科技大学 4. 小东,宏珍C语言程序设计与应用人民邮电5. 郭翠英C语言课程设计案例精编中国水利水电6郭有强C语言程序设计清华大学7丹程,莹,那俊C语言程序设计案例实践清华大学8丽娟C语言程序设计教程人民邮电9武雅丽,王永玲,解亚利C语言程序设计清华大学六、各阶段时间安排共1周日期容地点完成情况教师签字星期一教师讲解设计要求,准备参考资料实验室按期完成星期二分析系统,方案设计实验室按期完成星期三方案设计,编程实验室按期完成星期四调试程序,书写实训说明书实验室按期完成星期五完成实训说明书,辩论实验室按期完成摘 要C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用围广泛。根据课程设计要求使用C语言设计了此电子生词库软件,使用较为简单方便。该软件生词库为使用者本人创立,软件使用过程中可以进展词库的编辑维护。生词库包含中英文单词,软件具有查找单词功能可以进展中英文单词的查找。对于英文单词,给出中文解释,对于中文单词给出英文解释。关键词:生词库;编辑;查找AbstractClanguage is acomputer programming language.Ithas both the characteristicsof high-level language,but also has the characteristics ofassembly language.Itcan be used assystem design language,preparation of system applications,but also can be used as aprogramming language,the applicationwriting does not rely on computer hardware.Therefore,its application range isextensive.According to thedesign requirements forthe use of C languageto designtheelectronicmachinesoftware,the useis simple and convenient.Thesoftwareforthe userlexicon creation , softwareprocess can bethesaurusedit and maintenance.Studentsin theEnglishlexiconcontainswords,softwarehasto find wordstosearchforwordsinenglish.ForEnglishwords,given theChineseexplanation,forChineseword givenEnglishinterpretation.Keywords:edit;lookup;dictionary目 录1概述11.1 题目容11.2 要求11.3 设计目的22 总体设计33 详细设计63.1 创立函数63.2 显示函数93.3 编辑函数113.4 查找函数144调试与测试184.1 创立英文词库184.2 创立中文词库194.3 显示所有单词204.4 显示中文单词214.5 显示英文单词224.6 查找英文单词234.7 查找中文单词244.8 退出程序255结论26参考文献27致281概述1.1 题目容C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比方单片机以及嵌入式系统开发。运用C语言,设计编写一个电子生词库软件。该生词库软件可根据使用者需要,建立属于使用者自己的生词库,生词库软件使用过程中应简单易用。生词库中生词选自本人经常需要使用的单词。在生词库软件中对于英语单词,给出中文含义,对于中文单词给出英文含义。1.2 要求1创立生词库。用文件建立一个单词库,中英文单词均有,对于英语单词,给出中文含义,对于中文单词给出英文含义。2显示词库。显示所有单词和单词数、所有中文单词和单词数、所有英文单词和单词数,显示英文单词时按字母从小到大的顺序排列。3编辑词库。首先确认密码,后允许添加新词,删除旧词和修改旧词。4查找生词。显示所要查找的单词及其含义。 主菜单和子菜单能够循环出现,每一项菜单执行后,询问用户是否继续进展。从子菜单可以返回主菜单。在主菜单中选择0:显示完毕信息。按任意键后退出主序。1.3 设计目的1.进一步掌握和利用c语言进展程序设计的能力;2.进一步理解和运用构造化程序设计的思想和方法;3.初步掌握开发一个小型实用系统的根本方法;4.学会调试一个较长程序的根本方法;5.学会利用流程图或N-S图表示算法;6.掌握书写实训开发文档的能力书写实训报告;C语言是一种构造化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据构造。它还可以直接访问存的物理地址,进展位(bit)一级的操作。C语言有一个突出的优点就是适合于多种操作系统,如DOS、UNIX、windows 98windows NT;也适用于多种机型。C语言具有强大的绘图能力,可移植性好,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画,它也是数值计算的高级语言。C语言具有很多特点,如简洁紧凑、灵活方便:C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的根本构造和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进展操作,而这三者是计算机最根本的工作单位。运算符丰富C语言的运算符包含的围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。通过上机训练,更加深刻的理解C语言中的知识点,加深对课堂讲授容的理解更好的了解了一些关于C语言的知识,理解稳固了C语言的理论知识。学习上机调试程序熟悉程序开发环境、学习计算机系统的操作方法。2 总体设计该程序采用模块化设计,主要分为主模块,创立生词库模块,编辑词库模块,显示词库模块,查找生词模块。用户通过主模块对其余各模块进展调用,实现软件功能。主模块显示词库编辑词库创立生词库查找生词写文件显示所有单词读取文件图2.1程序模块关系图主模块具备显示主菜单功能,用户对主菜单提供的功能进展选择后,主模块调用所需功能模块,实现相应功能,如图2.2 所示。开场显示主菜单输入choose的值choose=.程序完毕调用CJ调用CZCC调用XG调用XSCK调用SC调用BJCK调用 TJ非法选项继续吗.yesnoyesno=n或y或Y或Nyesno=y或Y完毕束真假其他图2.2主模块函数调用图void main() int choose; while(1) printf( |-|n);printf( | 请输入选项编号0-4 |n);printf( |-|n);printf( | 1-创立生词库 |n);printf( | 2-显示词库 |n); printf( | 3-编辑词库 |n);printf( | 4-查找生词 |n);printf( | 0-退出系统 |n);printf( |-|n); printf(请输入选项n); scanf(%d,&choose); if(choose5|choose0) printf(输入错误,请重新输入); continue; switch(choose) case 1:CJ();break; case 2:XSCK();break;case 3:BJCK();break;case 4:CZCC();break;case 0:exit(0);default:printf(非法输入!); 3 详细设计主函数主要功能为调用各功能模块,功能模块共四个,分别为创立生词库模块,编辑词库模块,显示词库模块及查找生词模块。3.1创立函数创立函数功能为为用户创立生词库,并对存入单词进展存记录处理。存入单词按英汉单词及汉英单词进展保存。入口输入1输入E或C进入文件创立单词存记录出口真假图3.1 创立函数图void CJ()/创立生词库char choice; fflush(stdin);printf(请输入创立的类型E表示英汉,C表示汉英n);scanf(%c,&choice);switch(choice)case E:CJE();break;case e:CJE();break;case C:CJC();break;case c:CJC();break;default:printf(输入错误!n);break;void CJE()/创立英汉int i=0;char yn;struct English EHM;FILE* fp;fp=fopen(c:/english.txt,w);if(fp=NULL)printf(文件翻开失败n);return ;printf(请输入英文单词:n);scanf(%s,EHi.word );printf(请输入中文的解释:n);scanf(%s,EHi.explain );fprintf(fp,%10s%10s,EHi.word ,EHi.explain );printf( 操作成功!你要继续吗.(Y/N)n); fflush(stdin);yn=getchar(); if(yn=n|yn=N)fclose(fp); return;if(yn=y|yn=Y)while(1)i+; printf(请输入英文单词:n);scanf(%s,EHi.word );printf(请输入中文的解释:n);scanf(%s,EHi.explain );fprintf(fp,%10s%10s,EHi.word ,EHi.explain );printf(操作成功!你要继续吗.(Y/N)n); fflush(stdin);yn=getchar();if(yn=n|yn=N)break;fclose(fp);return;3.2显示函数显示函数主要功能为显示词库中单词,包含显示所有单词功能,显示英文单词功能,显示中文单词功能。输入显示子菜单输入0到4选择功能返回主菜单显示所有单词显示英文单词显示中文单词退出程序完毕图3.2 显示函数图void XSCK()/显示词库fflush(stdin);char yn; int choose; do printf( *-*n);printf( * 请输入编号0-4 *n);printf( *-*n);printf( * 1-显示所有单词 *n);printf( * 2-显示中文单词 *n);printf( * 3-显示英文单词 *n);printf( * 4-返回 *n); printf( * 0-退出系统 *n);printf( *-*n); printf(请输入你的选择!n); scanf(%d,&choose); switch(choose) case 1:XSSY();break; case 2:XSZW();break;case 3:XSYW();break; case 4:return; case 0:exit(-1); default:printf(输入错误n); fflush(stdin); printf(要继续显示吗(Y/N)n); yn=getchar(); while(yn!=y&yn!=Y&yn!=N&yn!=n) printf(要继续显示吗.请重新输入!n); fflush(stdin); yn=getchar(); ;while(yn=Y|yn=y);3.3编辑函数编辑函数主要功能为对词库进展编辑维护,包含添加单词,修改单词,删除旧词功能。输入输入密码输入0到4选择功能返回主菜单添加单词修改单词删除旧词退出程序完毕显示子菜单图3.3 编辑函数图void BJCK()/编辑词库char choice20=1111;char yn;char choice120;int count=0;int count1=0;int num=0;do printf(快快输入密码:n); scanf(%s,choice1);if(strcmp(choice,choice1)=0)count+;break;elsecount1+;printf(密码错误!请重新输入密码n);while(count10)int num;doprintf( |*|n);printf( | 请输入选项编号0-4 |n);printf( |*|n);printf( | 1-添加新词 |n);printf( | 2-删除旧词 |n);printf( | 3-修改旧词 |n);printf( | 4-返回 |n);printf( | 0-退出系统 |n);printf( |*|n);printf(请输入你的选项!n);scanf(%d,&num);switch(num)case 1:TJ();break;case 2:SC();break;case 3:XG();break;case 4:return;case 0:exit(0);continue;while(1);3.4查找函数查找函数主要为查找单词功能,包含查找英文单词功能,查找中文单词功能。入口输入查询方式按英文查找按中文查找调用cze调用czc出口提示非法Ec假图3.4 查找函数图void CZCC()/查找生词char ch;fflush(stdin);printf(请选择选择查找的类型(E/C)n);scanf(%c,&ch);if(ch=e|ch=E) cze();if(ch=c|ch=C) czc();void cze()/查找英文char word20;char yn;struct Chinese dcM;int n=0,i=0,k=-1;FILE* fp;if(fp=fopen(c:english.txt,r)=NULL)printf(很不好意思,文件打不开!n);while(feof(fp)=0)fscanf(fp,%s%s,dcn.word ,dcn.explain );+n;fclose(fp);doprintf(请输入你想要查找的单词!n);fflush(stdin);gets(word);for(i=0;in;i+)if(strcmp(word,dci.word )=0) printf(该单词的英文释义是:%sn,dci.explain ); k=1;break;if(k0)printf(没有该单词n);printf(你想继续继续吗Y/Nn);fflush(stdin);yn=getchar();while(yn!=y&yn!=Y&yn!=N&yn!=n)printf(要继续查找吗请重新输入!n);fflush(stdin);yn=getchar();while(yn=Y|yn=y);fflush(stdin);fclose(fp);void czc()/查找中文char word20;char yn;struct Chinese dcM;int n=0,i=0,k=-1;FILE* fp;if(fp=fopen(c:chinese.txt,r)=NULL)printf(很不好意思,文件打不开!n);while(feof(fp)=0)fscanf(fp,%s%s,dcn.word ,dcn.explain );+n;fclose(fp);doprintf(请输入你想要查找的单词!n);fflush(stdin);gets(word);for(i=0;in;i+)if(strcmp(word,dci.word )=0) printf(该单词的英文释义是:%sn,dci.explain ); k=1;break;if(k0)printf(没有该单词n);printf(你想继续继续吗Y/Nn);fflush(stdin);yn=getchar();while(yn!=y&yn!=Y&yn!=N&yn!=n)printf(要继续查找吗请重新输入!n);fflush(stdin);yn=getchar();while(yn=Y|yn=y);fflush(stdin);fclose(fp);4调试与测试对生词库软件所有功能进展测试,以检验生词库软件是否可靠,是否可以良好运行。4.1 创立英文词库运行程序后使用建立生词库功能,以英文单词apple cat 为例创立英文词库图4.1 创立创立英文词库图4.2 创立中文词库使用建立生词库功能,以中文单词狗为例创立中文词库 图4.2 创立中文词库图4.3 显示所有单词运行显示词库功能中显示所有单词功能图4.3 显示所有单词图4.4 显示中文单词运行显示词库功能中显示所有中文功能 图4.4 显示中文单词图4.5 显示英文单词运行显示词库功能中显示所有英文功能 图4.5 显示英文单词图4.6 查找英文单词运行查找生词功能,查找英文单词apple 图4.6 查找英文单词图4.7 查找中文单词运行查找生词功能,查找中文单词狗 图4.7 查找中文单词图4.8 退出程序在主界面执行退出系统功能图4.8 退出程序图5结论忙碌了一个星期,在大家的共同努力下,我们总算将此程序设计出来。尽管不是自己独立完成,但仍然很快乐,因为在设计的过程中,让我了解到要设计一个大型程序,查找资料是至关重要的,在他人的根底上,再根据自己所学进展修改与调试,最后设计出自己想要的程序,这过程艰辛,但只要你持之以恒,成功指日可待。另外平时扎实的根底也很关键,因为如果你平时学得就不怎么样,那么你面对这么一个比较有难度的程序,你可能会望而却步,看他人的程序都是个难点,更别说让你自己去设计。为了解决此类问题,最好就是多向同学,教师请教,不要怕难为情。尤其是教师,评他们多年的编写程序的经历,要解决我们的问题,对他们来说只是small case。在设计这个程序时,也遇到过很多问题,但在大家的共同努力下,问题最终都得以解决。从这一个多星期的设计过程中,我看到了大家的拼搏与努力,也让我知道团队精神得难能可贵,尽管一年下来大家不怎么有多大接触,但是彼此之间的友谊已经在我们心里扎根生底,在遇到问题时,我们会共同进退,每个人都很大方不会因为是通过自己艰辛劳动设计出来的东西而不准他人剽窃了。总之,这次设计程序让我受益良多,我会好好珍惜像这种难得的时机。参考文献1薛小龙.深入体验C语言工程开发.清华大学,20212立君.C语言程序设计习题集.科学,20213黎明志.乐在C语言.人民邮电,20214高文才.C语言程序开发例宝典.人民邮电,20215袁薄佳.C语言程序设计.华中科技大学,20076王立柱.C语言程序设计.机械工业,20217丹程.C语言程序设计案例实践.清华大学,20218丽娟.C语言程序设计教程第二版.人民邮电,20219飞飞.C语言开发宝典.机械工业,202110郭有强.C语言程序设计.清华大学,2021致 为期一个星期的课程设计完毕了,在课程设计过程中,遇到了很多或难或易的问题。首先感XXX教师,感她一学年来对我们学习的悉心教导,同时也感同学们在程序设计过程中给予我们的无私帮助。通过本次课程设计,我们获益匪浅。一星期的课程设计,让我们利用c语言进展程序设计的能力得到大幅提高,使个人能力编程能力得到极大改善,团队合作能力得到大大提高。教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。优选
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!