自编记单词小程序项目(自定义词库,多功能)C/C++语言实现

您所在的位置:网站首页 C语言常用英文单词 自编记单词小程序项目(自定义词库,多功能)C/C++语言实现

自编记单词小程序项目(自定义词库,多功能)C/C++语言实现

2024-07-14 16:32| 来源: 网络整理| 查看: 265

一款方便实用又简洁的记单词小程序,自定义单词库,多功能协助记忆!!!

在这里插入图片描述github地址:https://github.com/Knock-man/Memorizing-words-program 如今市面上的记单词app都是规定词库,有时候不能满足我们通常记忆单词的需求,比如我们记忆针对性单词,比较难记忆的单词,记完了需要复习的单词,在市面上的app无法添加自己的词库,都得按照导入的单词数书从头开始记忆,而本人写这个小程序的目的,也就是本程序的特点:“可设置自定义单词库!可设置自定义单词库!可设置自定义单词库!重要的事情说三遍”,除此之外还可以满足我们记单词过程中的多种需求,而且操作简洁,十分适用于天天在死啃单词小伙伴!!!

本人就是天天死啃单词一党,记单词突发奇想创造了这个程序

话不多说!!!开始出使用教程(代码最后会附上)

使用十分方便简单也是本程序一大特点,所以不用担心会麻烦,而且词库是永久性的,一次导入,终身使用,所以也需要担心单词会丢失的问题

顺便提一句担心会有没有写过C的萌新,附上编译器下载地址:Dev-cpp5.4.0

一、创建自己的词库

1.创建文件 在电脑上建立一个新文件,编译运行代码的路径选择到这个文件夹即可 (我在桌面上建立了文件) 在这里插入图片描述 2.运行代码 拷贝我的代码到编译器中编译运行即可,注意编译运行的代码存放路径放入刚才创建的文件下 在这里插入图片描述 运行后将出现菜单页面

在这里插入图片描述 3.创建词库 注意:词库会在自己添加第一个单词时会自动创建,但一旦创建就永久存在 输入1→输入单词 单词随意输入多少个都没问题,输入m退出添加单词 在这里插入图片描述 出现以下页面表示添加成功,按回车返回菜单 在这里插入图片描述 菜单栏下输入6可以看见刚才添加进词库的单词 在这里插入图片描述 打开刚才创建的文件也可以看到词库 在这里插入图片描述 打开词库文件 在这里插入图片描述 以后想添加删除更新词库单词也直接在这里修改,但是注意不要出现多余的回车,修改结束后要保证光标停留在最后一个单词的末尾,也可以直接在程序中和刚才一样进行添加

二、功能介绍

1.添加新单词 可以在外部词库txt文件中添加,也可以输入1在程序中添加,添加的单词会自动永久保存到词库中 2.默写中文 会根据词库随机抽取单词进行中文提问,输入答案之后会自动评测,打分 在这里插入图片描述3.默写英文 会根据词库随机抽取单词进行英文提问,输入答案之后会自动评测,打分 在这里插入图片描述4.根据中文选择英文 会根据词库随机抽取四个单词组成选项ABCD,并进行英文提问,选择选项之后会自动评测,打分(此功能词库最少需要有四个单词) 在这里插入图片描述 5.根据英文选择中文 会根据词库随机抽取四个单词组成选项ABCD,并进行中文提问,选择选项之后会自动评测,打分(此功能词库最少需要有四个单词) 在这里插入图片描述6.查看词库列表 可以查看词库单词、单词个数 在这里插入图片描述7.查找单词 可以根据需求对词库单词进行查找,输入中文可查英文,输入英文可查中文难 在这里插入图片描述 在这里插入图片描述 8.当天复习 录入当天所记词汇,进行复习检测,错误三次单词将自动录入词库 在这里插入图片描述 在这里插入图片描述

三、其他操作说明

1.输入m键返回菜单

2.输入q键退出

3.回车键下一题或者返回上一步或者返回菜单

4.操作过程中会进行自动记分

5.详细见程序的帮助

四、后期使用

程序运行一次之后,不需要再打开源程序运行,直接打开文件中的.exe文件进行操作即可,更加便捷 在这里插入图片描述

注意:若出现异常,请重启打开窗口

五、代码 /* 项目名:轻松记单词 项目时间:2020年7月11日 项目人:Knock man 项目背景:目前市面上的记单词软件无法添加自己的词库,根据词库需求记忆, 本程序就是实现自己设置词库,程序随机考察词库内的单词的功能,协助单词记忆 还提供当天单词复习功能 操作说明:见程序帮助部分 */ #include #include #include #include #include #include #include #include #include #include using namespace std; const int M=9999999; int choose,wordnumber=0,mark=1,score=0; map English; map chinese; struct Node{ string wEnglish; string wchinese; }; Node words[M]; //菜单 void list(){ system("cls"); printf(" ||* * * * * * * * * * * * * * * * * * * * * *《菜单》 * * * * * * * * * * * * * * * * * * * * * * *||\n || ||\n "); printf("|| 1.添加新单词 2.默写中文 3.默写英文 ||\n || ||\n "); printf(" || 4.根据中文选择英文 5.根据英文选择中文 6.查看词库列表 ||\n || ||\n || 7.查找单词 8.查看帮助 9.退出程序 ||\n" ) ; printf(" || ||\n || ||\n" ) ; printf(" ######################################################################################################\n\n"); printf(" 请选择操作(输入相应序号):"); } //添加新单词 int addwords(){ system("cls"); int k=0; printf("请分别输入单词中英文意思用空格隔开,输入m表示结束:\n\n"); while(1){ string Englishword; string chineseword; //输入单英文 cin>>Englishword; //退出程序 if(Englishword=="q"){ printf("\n\n 本次总共得%d分!!! \n\n",score); exit(0); } //打开菜单 if(Englishword=="m"){ system("cls"); if(k>=1){ printf("\n 单词导入词库成功,本次共导入%d个单词!!\n\n\n",k); }else{ printf("\n 您没有导入任何单词!!\n\n\n"); } printf(""); getchar(); getchar(); return 1; } //输入单词中文 cin>>chineseword; //退出程序 if(Englishword=="q"){ printf("\n\n 本次总共得%d分!!! \n\n",score); exit(0); } //打开菜单 if(chineseword=="m"){ system("cls"); if(k>=1){ printf("\n 单词导入词库成功,本次共导入%d个单词!!\n\n\n",k); }else{ printf("\n 您没有导入任何单词!!\n\n\n"); } printf(""); getchar(); getchar(); return 1; } //单词添加到map中 English[Englishword]=chineseword; chinese[chineseword]=Englishword; words[k].wchinese= chineseword; words[k++].wEnglish=Englishword; //单词加入词库 FILE *fp=fopen("词库.txt","a+"); char e[100],c[100]; //将字符串转为字符数组 strncpy(e,Englishword.c_str(),Englishword.length()+1); strncpy(c,chineseword.c_str(),chineseword.length()+1); //判断是否为第一个单词控制换行 if(English.size()=suji){ cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3