电子词典程序设计

上传人:Sc****h 文档编号:140265521 上传时间:2022-08-23 格式:DOC 页数:16 大小:149.50KB
收藏 版权申诉 举报 下载
电子词典程序设计_第1页
第1页 / 共16页
电子词典程序设计_第2页
第2页 / 共16页
电子词典程序设计_第3页
第3页 / 共16页
资源描述:

《电子词典程序设计》由会员分享,可在线阅读,更多相关《电子词典程序设计(16页珍藏版)》请在装配图网上搜索。

1、电子词典程序设计电子词典程序开发一、需求分析(1)程序的功能 英汉词典作为一个常用的学习工具,是我们经常要使用的。该系统能完成一个简单的电子英汉词典的功能,如:单词的查找、增词、删除、修改和维护等工作。在计算机中建立有限规模的电子英汉词典(文件),利用程序实现电子英汉词典的查找、 增词、删除、修改和维护工作。词典的内容为:每行对应一个词条,每个词条由两个字符串组成,字符串用若干空格符分开;前一个是单词字符串(英文),后一个是释义字符串(中文) ,使用分号作为多个释义的分隔符(无空格)。对单词和释义字符串长度的限定分别为不少于10 个与 15 个字符,词条数限定为不多于 1000 条。(2)输入

2、输出的要求。采用菜单工作方式。 在一个操作执行之后, 程序询问是否继续执行该操作。如输入 Y 或 y,则重复同一操作,不退回到菜单;如输入其它信息,则回到菜单等待另一次选择。 仅当选择退出操作时,程序应询问是否将修改后的词典存盘, 并根据用户选择存盘退出或不存盘退出。要求整个设计以人为本,用户界面友好。二、总体设计1 、程序共有五个子函数和一个主函数。1search 是查找函数,用户通过系统提示输入要查找的单词, 只要单词库中含有此单词便能找到相应的中文解释。 这个查找函数使用的是从头到尾的线性查找发, 虽然查找效率在数据很大上午时候无法容忍的。 但是因为这里涉及的数据量很小,使用线性查找对系

3、统性能没有很大上午损害。2.add 是增加函数,用户可通过此函数来增加单词库单词的数量。3.modify 是修改函数,程序提示用户输入要修改的单词,还是用线性查找的方法查找相应的纪录,如果找到,则提示输入新单词及中文解释。4.delete 是删除函数,程序提示用户输入要删除的单词,使用线性查找的方法找到相应的纪录,如果找到,提示用户确认删除才做。在得到确认后,删除这个单词的纪录。5. 主程序通过无限循环来接收输入的命令,并且根据命令调用相应的函数处理。2、课题中涉及到的数字主要是英文单词,和数据 1-4 ,它们都属于字符型数据,它们的结果还应该是字符型。三:详细设计四、调试分析与设计体会:1、

4、输入 1 就是添加新的单词, 输入 2 是删除已有的单词,输入 3 是查找要找的单词, 它包括两种方法, 1:是输入英语找单词, 2:是输入汉语找单词,输入 4 是退出程序。2、感谢老师让我有机会再次学习 C 语言 .我们这次设计的课题是电子英汉词典的设计, 通过这次的程序设计 ,知道了自己以前在学习 C 语言方面的不足 ,光是书本上的知识是不够的 ,自己编写出程序也是学习过程中相当重要的一环 ,以前学习过程中出现的问题在这次课题设计中全都暴露出来 .例如 :对知识的掌握不牢 ,程序的理解不透彻等等 .所以 ,我不得不再翻开课本以巩固以前学过的知识 ,这让我有效的弥补了知识的漏洞 .一开始我就

5、对 C 语言很感兴趣。我觉得每每听完一堂课, 我都有一种说不出的高兴, 有时也会发愁,因为课程越往后越难学而且讲课进度再加快,但我没有退缩,每天坚持看 C 语言。就这样一步步走到课程设计。虽然在这个实习周里的语言设计遇到了很多困难,但我并没有退缩, 找同学老师帮着改正错误,终于完成了,使自己尝到了成功的甜头。希望学校继续给我们这样的学习机会。五、参考文献:C 语言程序设计主编谭浩强清华大学出版社2005年 7 月C 语言程序设计实验指导与习题解答主编谭浩强清华大学出版社2005年 7月计算机软件基础主编麦中凡苗明川 何玉洁高等教育出版社2007 年 3 月六、原程序设计清单:#include#

6、includemain() static int n=32; char m;structchar eng10; char ci15; char yin10; char chi30; word1000=good,a,goud,hao,aide,n,eid,zhushou,bone,n,boun,gutou,ball,n,bo:,qiu,cat,n,cat,mao,cattle,n,katl,niu,clean,adj+d+v,kli:n,1.gan jin 2.gongzheng,a,num,ei,yi ge, finally,ad,fainens,zuizhong, fine,adj+ad+v

7、+n,fain,1.shushi2. hao, finish,v+n,finish,wancheng, girl,n,ge:l,nvhai, five,v,giv,gei, go,n+v,gou,zou, help,int+n,help,bangzhu, he,pron,hi:,ta,here,ad+ini,hie,zheli,high,aadj+ad+n,hai,gao,ice,n,ais,bing,idea,n,aidie,zhuyi,imagine,v,imadgin,xiangxiang,in,v,in:,zailimian,kill,v,kil,shasi,king,n,king,g

8、uowang,kiss,v+n,kis,wen,knight,n+v,nait,qishi,late,adj+ad,leit,1.chide2.yihoude,left,adj+ad+n,left,zuobian,line,n+v,lain,xian,name,n+v,neim,mingzi,mission,v,mision,rengwu;clrscr();loop:for(;)clrscr();printf(nt*Pleasemakeachoise*n);printf(nnt1.Addthenewwordn);printf(t 2.Del wordn);printf(t 3.find wor

9、dn);printf(t4.Exitthe processnn);printf(Pleasechoose14toentern);printf( Please press the key:);scanf(%c,&m);switch(m)case 1:char j10,k15,l10,p30;printf(n Add new word);printf(nn pleaseentertheDanci:);scanf(%s,j);printf(n Enter the Cixing:);scanf(%s,k);printf(n Enter the Yingbiao:);scanf(%s,l);printf

10、(nEnterChinese:);scanf(%s,p);strcpy(wordn.eng,j);strcpy(wordn.ci,k);strcpy(wordn.yin,l);strcpy(wordn.chi,p);printf(nPlease check it:);printf(nnEnglish.%s,wordn.eng);printf(nnCixing:%s, wordn.ci);printf(nnYinbiao:%s, wordn.yin);printf(nnChinese:%snn,wordn.chi);theprintf(nPleasepressany key with Enter

11、 key back!);scanf(%s,m); goto loop;case 2:char r10;int s,t,u,z=0,x=0;printf( Please press the English you want to del:);scanf(%s,r);for(s=0;s=n;s+)if(s=n-1)if(strcmp(words.eng,r)=0)x=1;for(t=s;tn;t+)strcpy(wordt.eng,wordt+1.eng);strcpy(wordt.ci,wordt+1.ci);strcpy(wordt.yin,wordt+1.yin);strcpy(wordt.

12、chi,wordt+1.chi);else if(strcmp(wordn.eng,r)=0)z=1;elsez=0;if(z=1|x=1)printf(nnn-;Del sucessful!n);printf(n Please press any key with Enter key back!);scanf(%s,m);elseprintf(nn Delfailed!);printf(nPlease press any key withEnter key back!);scanf(%s,m);break;case 3:int l;clrscr();printf(nnSearch the w

13、ordn);printf(1.SearchEnglish:n);printf(2.SearchChinese:n);printf(Other key backn);printf(Pleaseone:);bybychoosescanf(%d,&l);switch(l) case 1: char r10,m1; int s;printf(n Please enter the English word:);scanf(%s,r);for(s=0;s=n;s+)if(s=n-1)if(strcmp(words.eng,r)=0)break;elsecontinue;elseif(strcmp(word

14、n.eng,r)=0)break;elsechar m1;printf(n No this word!n Please press any key with Enter key back!);scanf(%s,m);goto loop;printf(nnEnglish.%s, words.eng);printf(nnCixing:%s, words.ci);printf(nnYinbiao:%s, words.yin);printf(nnChinese:%s, words.chi); printf(nnn Pleasepress any key with Enter key back!);sc

15、anf(%s,m); goto loop;case 2: char r10,m1; int s;printf(nPlease enterthe Chinese:);scanf(%s,r);for(s=0;s=n;s+) if(s=n-1)if(strcmp(words.chi,r)=0)break;elsecontinue;elseif(strcmp(wordn.chi,r)=0)break;elsechar m1;printf(nNothisword!nPlease pressany keywithEnter key back!);scanf(%s,m);goto loop;printf(nEnglish.%s,words.eng);printf(nnCixing:%s,words.ci);printf(nnYinbiao:%s,words.yin);printf(nnChinese:%s,words.chi);printf(nnnpress any key with Enter key back!);Pleasescanf(%s,m);default: goto loop;break;case 4: exit(0);default: break;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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