ImageVerifierCode 换一换
格式:DOC , 页数:27 ,大小:121.50KB ,
资源ID:7047751      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7047751.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(英汉小词典课程设计报告.doc)为本站上传会员【w****g】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

英汉小词典课程设计报告.doc

1、 英汉小词典课程设计报告 25 2020年4月19日 文档仅供参考,不当之处,请联系改正。 学号 - 第二学期 《高级语言程序设计》 课程设计报告 题目: 英汉小词典 专业: 计算机科学与技术 班级: 计科2班 姓名: XXXX 指导教师: XXX 成绩: 计算机与信息工程系 06月28日 目录 1设计内容及要求.........................................3 1.1设计内容..........

2、3 1.2设计任务及具体要求...........................................3 2概要设计.........................................................4 2.1系统功能简介.............................................4 2.2总体设计框图.............................................4 3 设计过程或程序代码....

3、5 3.1对关键代码加以分析说明................................5 3.2程序运行界面.......................................10 4 程序设计结果与分析...........................................12 5 心得.....................................................13 致谢...................................

4、13 参考文献...........................................................13 附录:源程序.......................................................14 英汉小词典 1 设计内容及要求 1.1设计内容 (1)、在计算机中建立有限规模的电子英汉词典(文件),利用程序实现电子英汉词典的查询、增词、删除、修改和维护工作。 (2)、词典的内容为:每行对应一个词条,每个词条由两个字符串组成,字符串用若干空格符分开;前一个

5、是单词字符串(英文),后一个是释义字符串(中文),使用分号作为多个释义的分隔符(无空格)。 (3)、对单词和释义字符串长度的限定分别为不少于20个与40个字符,词条数限定为不多于200条。 (4)、采用菜单工作方式。在一个操作执行之后,程序询问是否继续执行该操作。如输入A或a,则重复同一操作,不退回到菜单;如输入其它信息,则回到菜单等待另一次选择。仅当选择退出操作时,程序应询问是否将修改后的词典存盘,并根据用户选择存盘退出或不存盘退出。 1.2设计任务及具体要求 主要利用c语言的文件操作能力设计开发一个英汉小词典,至少具有如下功能:查询、删除、增词、修改单词。操作界面要符合用户的一般习

6、惯,图形或文本界面都能够。 要求:明确课程设计的目的,能根据课程设计的要求,查阅相关文献,为完成设计准备必要的知识; 提高学生用高级语言进行程序设计的能力,重点提高用C语言进行文件操作和绘图应用的编程技术水平;初步了解软件开发的一般方法和步骤; 提高撰写技术文档的能力。 2 概要设计 2.1系统的功能简介 用户能够经过本系统查询单词以及释义,修改,新增以及删除词条。用户在使用电子词典的时候,有可能会使用电子词典的查询功能,也有可能使用电子词典的轻松背单词功能,当用户需要查询的时候,系统必须提供这个单词的所有信息,以便与用户获得所需要的信息;能够自定义单词,使用户自己能够新增词条

7、扩充词库。 输入与输出的要求:当用户使用查询功能时,系统必须显示词条与释义;当用户觉得本词条存在不足,需要修改时,系统必须提供修改的词条与释义,以及用户输入的内容,修改完成时,提示按确认结束,删除单词时显示要删除的词条与释义,以及词条已删除。 2.2 总体程序框图 主函数 修改 退出 删除 增词 查询 图A总体设计 开始 显示菜单 5 3 2

8、1 4 退出词典 执行新增函数 执行查询函数 执行删除函数 执行修改函数 图B详细设计 3 设计过程或程序代码 3.1对关键代码加以分析说明: (一) 菜单显示: int main(int argk,char *argh[]) { int m=0; if(argk>1) strcpy(fileDict,argh[1]); else strcpy(fileDict,"c:\

9、\dict.txt"); for(;;) { printf("\n\-----------欢迎使用电子英汉小词典!-----------\n\------------------------\n\-1-查询词条\n\-2-新增词条\n\-3-删除词条\n\-4-修改词条\n\-5-退出词典\n\--------------------\n"); m=getchar()-'0'; switch(m) { case 1: Search();break; case 2: Append();break; case 3: Delete(

10、);break; case 4: Update();break; default : return 0; } } return 0; } (二) 查询词条: void Search(void) { Project i; fpos_t p=0; memset(&i,0,szProject ); printf("please input the word you want:"); scanf("%s",i.word ); p=consult(i.word,i.mean); if(

11、p==0) { printf("sorry do not find what you want!\n"); return; } printf("单词:%s\n释义%s",i.word,i.mean ); } (三) 新增词条: void Append(void) { Project i; FILE *f=0; fpos_t p=0; memset(&i,0,szProject); printf("please input the word you want:"); s

12、canf("%s",i.word ); p=consult(i.word,0); if(p) { printf("sorry do not find what you want!\n"); return; } printf("please giving the meaning,按确认结束"); fflush(stdin); gets(i.mean); f=fopen(fileDict,"ab"); fwrite(&i,szProject,1,f); fclose(f);

13、 printf("词条已新增\n"); } (四)删除词条: void Delete(void) { Project i; FILE *f=0; fpos_t p=0; memset(&i,0,szProject); printf("please input the word you want:"); scanf("%s",i.word); p=consult(i.word,0); if(p==0) { printf("sorry do not find what you want!

14、\n"); return; } p--; memset(&i,0,szProject); f=fopen(fileDict,"rb+"); fsetpos(f,&p); fwrite(&i,szProject,1,f); fclose(f); printf("词条已删除\n"); } (五) 修改词条: void Update(void) { Project i; FILE *f=0; fpos_t p=0; memset(&i,0,szP

15、roject); printf("please input the word you want:"); scanf("%s",i.word); p=consult(i.word,0); if(p==0) { printf("sorry do not find what you want!\n"); return; } p--; printf("please giving the meaning,按确认结束(输入drop放弃修改):"); fflush(stdin); gets(

16、i.mean); if(strstr(i.mean,"drop")) { printf("已放弃修改!\n"); return; } f=fopen(fileDict,"rb+"); fsetpos(f,&p); fwrite(&i,szProject,1,f); fclose(f); printf("词条已保存\n"); } 3.2程序运行界面 进入菜单界面后,出现“欢迎使用电子英汉词”;然后有5个选项:1查询词条,2新增词条,3删除词条,4修改词条,5退出词典。 输入1,按回车键,输入

17、你想查询的词条,如果系统里存在你要查询的单词,就会输出词条与释义,如果没有,会显示“sorry do not find what you want!”,。 输入2,按回车键,输入你想要新增词条,输入你要新增的单词,如“cat”,按回车输入释义“猫”,如果系统存在本词条,则会输出“sorry do not find what you want!” 输入3,按回车键,输入你想删除的词条,按回车会输出词条已删除。 输入4,按回车键,输入你想修改的词条,按回车,输入释义。如果放弃修改则输入“ drop”。 输入5,退出词典。 4 程

18、序设计结果与分析 当把程序写好并进行调试时,并不是一帆风顺的,总会遇到很多在调试时遇到的错误。 1. 首先在定义函数时,不能输入汉字。否则会程序会显示错误。 2.如果要调用查询函数,增词函数,删除函数,修改函数等要在主函数前面进行申明,否则会显示警告。 3.如果程序在运行的过程中,对于一个循环语句,如果你返回的值始终是真的,那么程序将进如死循环。 4.对应该有花括弧的复合语句,忘记加花括弧。 5. 所调用的函数在调用语句之后才定义,而又在调用前未加说明。 5 心得

19、 在本课程设计的设计过程中,我体会到了从事C语言课程设计工作需要严谨、认真的态度和作风,半点都不能马虎。每个细微的小细节都必须十分注意,如果不认真思考,就会出现或大或小的错误。如果没有发现前面的错误,对后面的工作影响就会很大,甚至有时会推倒很多前面做的工作。有时候,我自己觉得我写的程序非常正确,但就是编译通不过,在查询错误的过程中,面临着否认自己的过程,感觉很痛苦。在设计过程中遇到的很多问题与麻烦,经过向同学请教与讨论后基本得到了解决,让我明白了团体的力量是巨大的,平时遇到问题要勇于与同学们和老师讨论,这样才能共同进步与学习,也只有这样才能进步的更快,同时也要敢于相信自己的主见,也要考虑别人

20、的想法和意见,不能一味的接受或者排斥,同时也不能太骄傲自大,要谦虚地向老师与同学请教,只有这样我才能不断的进步。 在反重复复的学习中,我终于作出一个简单的程序,虽然这个程序的功能非常简单,而且在实际运用中还有些不足,比如:在查询词条后,按任意键会退出 词典,这点还需要改进。在进行其它功能完成后,按任意键不会退出系统。 致谢 在这次C语言课程设计中,我的老师和同学给了我及大的帮助。特别是我的指导老师孙淮宁老师,还有我的C语言任课老师徐宁老师。在此,我对她们表示感谢!感谢她们在我面对困难时给了我帮助和支持。也感谢那些给我帮助的所有同学! 参考文献:

21、 【1】谭浩强.C程序设计(第三版).清华大学出版社. : P219~P363 【2】胡超、闫玉宝. 30天学通Visual C++项目案例开发. 电子工业出版社. :P228~P273 附录:源程序 #include #include #include #define szWORD 50 #define szSTRN 200 #define szProject sizeof(struct Dictionary) char fileDict[szSTRN]; typedef struct

22、 Dictionary /*声明新结构体类型名为Project*/ { char word[szWORD]; char mean[szSTRN]; }Project; fpos_t consult(char *word,char *mean) { FILE *f=0; Project i; int r=0; fpos_t p=0; if(!word) return 0; f=fopen(fileDict,"rb"); /*以读的方式打开二进制文件*/ if(!f) return 0;

23、 while(!feof(f)) /*指针是否指导文件末尾*/ { fgetpos(f, &p); r=fread(&i,szProject,1,f); /*读入数据的存放地址*/ if(r<1) break; if(i.word[0]==0) continue; if(strcmp(i.word,word)) continue; if(mean) strcpy(mean,i.mean ); fclose(f); /*关闭文件*/

24、 return p+1; } fclose(f); /*关闭文件*/ return 0; } void Search(void); /*对Search函数进行函数声明*/ void Append(void); /*对Append函数进行函数声明*/ void Delete(void); /*对Delete函数进行函数声明*/ void Update(void); /*对Update函数进行函数声明*/ int main(int argk,char *argh[]) /*主菜单显示*/ {

25、 int m=0; if(argk>1) strcpy(fileDict,argh[1]); /*文件复制*/ else strcpy(fileDict,"c:\\dict.txt"); /*文件复制*/ for(;;) { printf("\n\------------------\n\-欢迎使用电子英汉小词典!\n\--------------------\n\-1-查询词条\n\-2-新增词条\n\-3-删除词条\n\-4-修改词条\n\-5-退出词典\n\--------------------\n"); m=getchar

26、)-'0'; switch(m) { case 1: Search();break; case 2: Append();break; case 3: Delete();break; case 4: Update();break; default : return 0; } } return 0; } void Search(void) /*查询词条*/ { Project i; fpos_t p=0; memset(&i,0,szProject ); /*将结构体szPr

27、oject的指定位置清零*/ printf("please input the word you want:"); scanf("%s",i.word ); p=consult(i.word,i.mean); if(p==0) { printf("sorry do not find what you want!\n"); return; } printf("单词:%s\n释义%s",i.word,i.mean ); } void Append(void) /*新增词条*/ { Pro

28、ject i; FILE *f=0; fpos_t p=0; memset(&i,0,szProject); /*将结构体szProject的指定位置清零*/ printf("please input the word you want:"); scanf("%s",i.word ); p=consult(i.word,0); if(p) { printf("sorry do not find what you want!\n"); return; } printf

29、"please giving the meaning,按确认结束"); fflush(stdin); /*清除标准输入设备(本程序中指键盘)的缓存*/ gets(i.mean); f=fopen(fileDict,"ab"); /*以向文件末尾添加数据的方式打开文件*/ fwrite(&i,szProject,1,f); /*输出数据的地址*/ fclose(f); /*关闭文件*/ printf("词条已新增\n"); } void Delete(void) /*删除词条*/

30、{ Project i; FILE *f=0; fpos_t p=0; memset(&i,0,szProject); /*将结构体szProject的指定位置清零*/ printf("please input the word you want:"); scanf("%s",i.word); p=consult(i.word,0); if(p==0) { printf("sorry do not find what you want!\n"); return; }

31、 p--; memset(&i,0,szProject); /*将结构体szProject的指定位置清零*/ f=fopen(fileDict,"rb+"); /*以读写的方式打开二进制文件*/ fsetpos(f,&p); fwrite(&i,szProject,1,f); /*输出数据的地址*/ fclose(f); /*关闭文件*/ printf("词条已删除\n"); } void Update(void) /*修改词条*/ { Project i; F

32、ILE *f=0; fpos_t p=0; memset(&i,0,szProject); /*将结构体szProject的指定位置清零*/ printf("please input the word you want:"); scanf("%s",i.word); p=consult(i.word,0); if(p==0) { printf("sorry do not find what you want!\n"); return; } p--; printf(

33、"please giving the meaning,按确认结束(输入drop放弃修改):"); fflush(stdin); /*清除标准输入设备(本程序中指键盘)的缓存*/ gets(i.mean); if(strstr(i.mean,"drop")) { printf("已放弃修改!\n"); return; } f=fopen(fileDict,"rb+"); /*以读写的方式打开二进制文件*/ fsetpos(f,&p); fwrite(&i,szProject,1,f); /*输出数据的地址*/ fclose(f); /*关闭文件*/ printf("词条已保存\n");}

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服