資源簡介
英文單詞小助手是幫助學生背誦單詞的軟件,用戶可以選擇背誦的詞庫,并可以編輯自己的詞庫,還應有詞語預覽學習功能。系統可以給出中文,讓學生輸入其英文詞意,也可輸入英文讓學生輸入其中文詞意,并判定詞意是否正確。如不正確則給出提示并要求用戶重新輸入,如正確則加分。

代碼片段和文件信息
/**
*?@file?chapter.cpp
*?@brief?英語單詞小助手
*?@version?1.0
*?@author?崔茂
*?@date?2018年9月6日
*/
#include?
#include?
#include?
#define?MAX_CHAR?20??//?最大字符
#define?MAX_NUM?200??//?單詞的最大個數
/**
*?@Description?單詞的結構體
*/
struct?word
{
???char?en[MAX_CHAR];?//?英文形式
???char?ch[MAX_CHAR];?//?中文形式
}??s[MAX_NUM];?//?單詞數組
int?num;??//?單詞個數
int?select?=?1;//?select為是否退出系統的標記
int?d?=?0?c?=?0;
/**
*?@Description?幫助
*/
void?help()
{
????printf(“\n本系統主要實現英語單詞學習的功能。用戶可對詞典文件中的單詞進行預覽增刪改查。“);
printf(“\n同時還可進行中英、英中測試。本系統還提供了測試成績的顯示功能。“);
}
/**
*?@Description?從文件中讀取單詞的信息
*/
void?readfile()
{
???FILE?*fp;
???int?i?=?0;
???fp=fopen(“data.txt“?“r“);
???if(!fp)
???{
???printf(“\n打開文件data.txt失敗!“);
???}
???while(fscanf(fp?“%s?%s?“?s[i].en?s[i].ch)?==?2)
???{
???i++;
???}
???num?=?i;
???if(0?==?i)
???printf(“\n文件為空請選擇詞典維護增加詞條!“);
???else
???printf(“\n“);
???fclose(fp);
}
/**
*?@Description?向文件中寫入單詞的信息
*/
void?writefile()
{
???FILE?*fp;
???int?i?=?0;
???fp=fopen(“data.txt“?“w“);
???if(!fp)
???{
???printf(“\n打開文件data.txt失敗!“);
???}
???for(i=0;i ???{
???fprintf(fp?“\n%s?%s?“?s[i].ens[i].ch);
???}
???printf(“\n“);
???fclose(fp);
}
/**
*?@Description?按字典排序
*/
void?sort()
{
int?ij;
char?temp[MAX_CHAR];
for(i?=?0;i? {
for(j?=?num?-?1;j?>?i;j--)
if(strcmp(s[j-1].en?s[j].en)?>?0)
{
strcpy(temp?s[j-1].en);
strcpy(s[j-1].en?s[j].en);
strcpy(s[j].en?temp);
strcpy(temp?s[j-1].ch);
strcpy(s[j-1].ch?s[j].ch);
strcpy(s[j].ch?temp);
}
}
}?
/**
*?@Description?添加單詞信息
*/
void?add()
{
int?i=numjflag=1;
????while(flag)
{
flag=0;
printf(“\n請輸入單詞的英文形式:“);
scanf(“%s“?s[i].en);
for(j?=?0;j? if(strcmp(s[i].en?s[j].en)?==?0)
{
printf(“已有該單詞請檢查后重新錄入!\n“);
flag?=?1;
break;?/*?如有重復立即退出該層循環提高判斷速度?*/
}
????
????}
????printf(“\n請輸入單詞的中文形式:“);
????scanf(“%s“?s[i].ch);
????num++;
printf(“\n您輸入的信息為:?英文:?%s?中文:?%s??“?s[i].en?s[i].ch);
sort();
}
/**
*?@Description?刪除單詞信息
*/
void?del()
{
??? int?i?=?0?j?=?0;
char?en[MAX_CHAR];//?英文形式
?? printf(“\n請輸入你要刪除的單詞英文形式:“);
scanf(“%s“?en);
for(i?=?0;i? ????if(strcmp(s[i].en?en)?==?0)
{
for(j?=?i;j? ?s[j]?=?s[j+1];
num--;//?數量減少1
return;
}
?????printf(“\n沒有這個單詞!“);
}
/**
*?@Description?修改單詞信息
*/
void?modify()
{
int?i?=?0?choose?=?0?flag?=?1;//?chooses代表選項標識,flag代表是否找到單詞
char??en[MAX_CHAR];//?英文形式
while(flag||choose)
{
printf(“\n請輸入你要修改的單詞英文形式:“);
scanf(“%s“?en);
for(i?=?0;i? if(strcmp(s[i].en?en)?==?0)
{
printf(“\n請輸入單詞正確的英文形式:“);
scanf(“%s“?s[i].en);
printf(“\n請輸入此單詞正確的的中文形式:“);
scanf(“%s“?s[i].ch);
printf(“\n繼續修改請選1,返回上一級請選0:“);
scanf(“%d“?&choose);
if(choose?==?0)?
return;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????9196??2018-09-07?20:08??homework\chapter2.cpp
?????文件?????????31??2018-09-06?09:32??homework\data.txt
?????文件???????4308??2018-09-06?09:46??homework\homework.dsp
?????文件????????541??2018-09-06?08:05??homework\homework.dsw
?????文件??????50176??2018-09-09?12:00??homework\homework.ncb
?????文件??????48640??2018-09-09?12:00??homework\homework.opt
?????文件???????1293??2018-09-07?20:00??homework\homework.plg
?????目錄??????????0??2018-09-09?11:55??homework\Debug
?????目錄??????????0??2018-09-09?12:01??homework
-----------?---------??----------?-----??----
???????????????114185????????????????????9
- 上一篇:ROBOOP --機器人正逆解C++版本開源開源庫pdf文檔
- 下一篇:QT點菜系統
評論
共有 條評論