背单词小程序.doc
《背单词小程序.doc》由会员分享,可在线阅读,更多相关《背单词小程序.doc(33页珍藏版)》请在咨信网上搜索。
1、(完整word版)背单词小程序软件工程专业C+ 课程设计报告班级:软件 姓名: 学号:一课程设计目的及要求1设计目的1. 提高和加强计算机应用与软件开发能力,由初学者向专业的程序员过渡。2. 培养独立分析问题、解决问题、查阅资料以及自学能力,以适应计算机产业日新月异发展的形势。3. 学习和掌握C+程序设计方法以及上机调试技巧,为今后学习其它专业课程打好基础。2设计要求(题目)(1)背单词小程序(2)学生选课系统二课程设计的具体实现(1)背单词小程序1总体设计本程序主要有以下功能:l 添加新词l 顺序测验和随即测验l 记录没背过的词l 查找单词的汉语或英语意思(输入中文查对应的英语意思,输入英文
2、查对应汉语意思)1.添词(Part 1.cpp)2.检测(Part 2.cpp)3.已背单词(Part 3.cpp)3. 未背单词(Part 4.cpp)4.英汉互译(Part 5.cpp)6.退出单词库添加到单词库随机检测顺序检测进入程序,显示主菜单(Menu.cpp)选择功能各模块执行完后均返回主函数。主要流程英译汉汉译英2详细设计具体实现包括十个模块和一个头文件。分别是:First.cpp,Main.cpp,Menu.cpp,Part 1.cpp,Part 2.cpp,Part 3.cpp,Part 4.cpp,Part 5.cpp,Part 6.cpp,五大功能粗实现.cpp,HEAD
3、.H。Meun函数主要功能:用户进入系统首先执行的就是主函数,然后进入主菜单函数,它将显示主界面,并提示用户选择所需的功能。其中改变了屏幕和字体的颜色来构造一种欢快的气氛来学习。主功能:1.添加单词;2.进入检测;3.已背单词;4.未背单词;5.英汉互译;6.退出。主要技术:if else if循环。关键代码:if(i=1) /进入功能1 添加新词 system(cls); /清屏 Add_word();、调用添词函数cinj;system(cls);if(j=1)Add();else if(j=2) system(cls);Frame();else /尽量避免在使用程序时因操作引起的失误co
4、ut认真一点!(_)#endl;cout回答问题决定您的方向:endl;cout您是否对我的程序满意:Y/Nch;if(ch=Y|ch=y)system(cls);Frame();elseexit(0); elseif(i=2)system(cls);Test();cinj;if(j=1)Test_ByOrder();cout任意键返回主目录!ch;if(ch=b|ch=B)system(cls);Frame();elsesystem(cls);Frame(); else if(j=2)Test_ByImmediately();cout任意键返回主目录!ch;if(ch=b|ch=B)syst
5、em(cls);Frame();elsesystem(cls);Frame();else if(j=3)添加单词主要功能:用户在主界面选择功能1后即执行添加单词模块。它将提示用户输入添加单词,之前可以显示已存在的单词,利用while循环实现不定量输入单词,最后保存到单词库。主要使用技术:文件指针(FILE *fp) while判断循环关键代码:char ch=Q; /用来判断是否继续输入单词if(fp=fopen(dictionary.txt,ab+)=NULL)cout文件无法打开!endl;exit(0);for(i=0;fread(&Wordi,sizeof(WoRD),1,fp)!=0
6、;i+)coutWordi.num Wordi.E_wordendl; /特别有成就感的地方! 把以前的单词输出来展示j=i;while(ch=q|ch=Q) / while 循环支持不断向文件载入内容!cout目前单词库单词存储量为:jendl;cout请分别输入新增单词的编号、单词、中文翻译和背诵记录(tt/ff):Wordj.numWordj.E_wordWordj.C_wordWordj.TF;fwrite(&Wordj,sizeof(WoRD),1,fp);cout添加成功!是否继续增添单词,继续则输入Q/qch;检测功能主要功能:用户在主界面选择功能2后即执行该模块。在此模块中可以
7、实现顺序检测和随机检测。用户输入正确或错误都会给与提示!并且可以输入想要检测的单词数量,量力而行。主要技术:文件的读出与写入,取随机数,if语句关键代码:if(fp=fopen(dictionary.txt,ab+)=NULL)cout文件无法打开!endl;exit(0);for(i=0;it;i+)fread(&Wordi,sizeof(WoRD),1,fp);cout随即检测开始!:endl;cout请输入这次测试的单词量:p;if(p=t)for(i=0;it;i+)char word10;int j;j=rand()%t; /产生随机数coutWordj.C_word word;if
8、(strcmp(word,Wordj.E_word)=0)cout回答正确!endl;char tf3=tt;strcpy(Wordi.TF,tf); /将信息记录在案!elsecout回答错误!endl;char tf3=ff;strcpy(Wordi.TF,tf);elsefor(i=0;ip;i+)char word10;int j;j=rand()%p; /产生随机数coutWordj.C_word word;if(strcmp(word,Wordj.E_word)=0)cout回答正确!endl;char tf3=tt;strcpy(Wordi.TF,tf);elsecout回答错误
9、!endl;char tf3=ff;strcpy(Wordi.TF,tf);已背过单词主要功能:用户在主界面选择功能3后即执行该模块,能够显示已背诵的单词。主要技术:该模块只是调用和显示,主要用到了if函数和字符串处理和文件的读出技术。关键代码:if(fp=fopen(dictionary.txt,ab+)=NULL) /打开文件并判断文件是否存在cout文件无法打开!endl;exit(0);for(i=0;it;i+)fread(&Wordi,sizeof(WoRD),1,fp); /将文件信息读出cout已背过的单词:endl;for(i=0;it;i+)char ch5=tt;char
10、 cf5=TT;if(strcmp(Wordi.TF,ch)=0|strcmp(Wordi.TF,cf)=0) /和英汉互译差不多的操作 判断后输出coutWordi.E_word Wordi.C_wordendl;未背单词主要功能:用户在主界面选择功能3后即执行该模块,能够显示尚未背诵的单词。主要技术:该模块只是调用和显示,主要用到了if函数和字符串处理和文件的读出技术。关键代码:if(fp=fopen(dictionary.txt,ab+)=NULL)cout文件无法打开!endl;exit(0);for(i=0;it;i+)fread(&Wordi,sizeof(WoRD),1,fp);
11、cout未背过的单词:endl;for(i=0;it;i+)char ch5=ff;char cf5=FF;if(strcmp(Wordi.TF,ch)=0|strcmp(Wordi.TF,cf)=0)coutWordi.E_word Wordi.C_wordendl; 英汉互译主要功能:用户在主界面选择功能5后即执行该模块,能够进行英汉互译功能。主要技术:该模块只是调用和显示,主要用到了if函数和字符串处理和文件的读出技术。关键代码:char E20; /用数组是为了下面的地址 WoRD Word100;if(fp=fopen(dictionary.txt,ab+)=NULL)cout文件无
12、法打开!endl;exit(0);for(i=0;it;i+)fread(&Wordi,sizeof(WoRD),1,fp);cout输入其英文:E;for(i=0;it;i+)if(strcmp(Wordi.E_word,E)=0)coutWordi.C_wordendl;cout任意键返回主目录!ch;if(ch=b|ch=B)system(cls);Frame();elsesystem(cls);Frame();头文件本套程序一共有一个头文件。HEAD.h用于定义单词结构体,共有“单词编号”,“ 单词英文”,“ 单词中文意思”,“ 标注”几项。代码如下:struct WoRD /没有用
13、WORD 时因为 #include里有叫WORD的 b汗!int num; /单词编号char E_word20; /单词英文char C_word30; /单词中文意思char TF3; /用来标注是否背过;3调试及问题解决本套程序的调试中遇到过许多问题。尤以以下几个最具代表性和启发性:1 程序无法循环使用。刚开始程序完成一项功能后就自动退出程序,总是不能再返回主菜单,这样程序也就显得特无力。后来通过他人指导利用函数间相互调用完成了界面间自由往来!而且利用清屏功能让程序显得干净明了!void Frame()int i,j;Menu();cini;if(i=1) system(cls); Ad
14、d_word();cinj;system(cls);if(j=1)Add();else if(j=2) system(cls);Frame();else /尽量避免在使用程序时因操作引起的失误cout认真一点!(_)#endl;cout回答问题决定您的方向:endl;cout您是否对我的程序满意:Y/Nch;if(ch=Y|ch=y)system(cls);Frame();elseexit(0);2 文件的调入后的数据更新。每次进行单词添加的时候都只能显示10个单词,但是我渴望的是把以前的单词输出来,再把这次添加的单词也输出来。后来我利用一个数组把文件里的单词信息记录了一下,再把那个全局变量记
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单词 程序
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。