1、仲恺农业工程学院工程实训汇报电子词典 课程名称 C+面向对象课程设计姓 名 郑志欣院(系) 信息科学和技术学院专业班级 计算机科学和技术132班学 号 20244215指导老师 史婷婷仲恺农业工程学院教务处制目 录1 需求分析12 系统总框图和功效模块说明12.1 系统总框图12.2 功效模块说明13 系统设计23.1 关键结构体23.2关键功效函数23.3 关键函数步骤图24 系统调试25 总结26 源程序清单21 需求分析 在这个电子词典系统里,我关键是作为一个英汉词典进行,该系统含有简单英汉词典功效,使之能提供以下功效:l 单词查找l 单词增除l 单词修改、维护等工作2 系统总框图和功效
2、模块说明2.1 系统总框图电子词典系统单词增加单词修改单词删除保留词典单词查找 依据汉字查询依据英文查询2.2 功效模块说明增加单词,完成单词录入;查找单词,完成单词输出;3 系统设计3.1 电子词典源代码#include#include#include#includevoid main() static int n=13; char m; structchar eng50;char ci50;char yin50;char chi50;word1000=cat,n,猫,clean,adj&d&v,1.洁净 2.整齐,finally,ad,最终,最终,;int();loop:for(;)sys
3、tem(cls);int();coutnt=欢迎进入英汉词典=endl;coutnt *选择项目* nendl;coutnnt 1.增加单词nendl;coutt 2.删除单词nendl;coutt 3.查找单词nendl;coutt 4.修改单词nendl;coutt 5.退出系统nnendl;cout 请选择15选项nendl;coutm;switch(m)case 1:char j10,k15,l10,p30;+n;coutn 增加单词endl;coutj;coutk;coutl;strcpy(wordn.eng,j);strcpy(wordn.ci,k);strcpy(wordn.yi
4、n,l);coutn Please check it:;coutnn 英文: wordn.engendl;coutnn 词性: wordn.ciendl;coutnn 汉字: wordn.yinendl;coutn 按任意键返回m;break;case 2:char r10;int s,t,z=0,x=0;coutr;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.y
5、in,wordt+1.yin);elseif(strcmp(wordn.eng,r)=0)z=1;elsez=0;if(z=1|x=1)coutnn 删除成功! nendl;n-;coutn 按任意键返回m;else coutnn 删除失败endl;coutn 按任意键返回m;break;case 3:int l;coutnn 查找单词 nendl;cout 1.经过英文查找 nendl;cout 2.经过汉字查找 nendl;coutl;switch(1)case 1: char r10,m1; int s;coutr;for(s=0;s=n;s+)if(s=n-1)if(strcmp(wo
6、rds.eng,r)=0)break;elsecontinue;elseif(strcmp(wordn.eng,r)=0)break;elsechar m1;coutn 按任意键返回m;goto loop;coutnn 英文: words.engendl;coutnn 词性: words.ciendl;coutnn 汉字: words.yinendl;coutn 按任意键返回m;break;case 2: char r10,m1; int s;coutr;for(s=0;s=n;s+)if(s=n-1)if(strcmp(words.chi,r)=0)break;elsecontinue;el
7、seif(strcmp(wordn.chi,r)=0)break;elsechar m1;coutn 按任意键返回m;goto loop;coutn 英文: words.engendl;coutnn 词性: words.ciendl;coutnn 汉字: words.yinendl;coutn 按任意键返回m;break;case 4:char j10,k15,l10,p30,r10,m1;int s;+n;coutn 修改单词 words.engendl;coutr;for(s=0;s=n;s+)if(s=n-1)if(strcmp(words.eng,r)=0)break;elsecont
8、inue;elseif(strcmp(wordn.eng,r)=0)break;elsechar m1;coutn 没有这个单词!n 按任意键返回m;goto loop;coutnn 英文: words.engendl;coutnn 词性: words.ciendl;coutnn 汉字: words.yinendl;coutnn 你能够进行修改endl;coutj;coutk;coutl;strcpy(wordn.eng,j);strcpy(wordn.ci,k);strcpy(wordn.yin,l);coutn 确定?;coutnn 英文: wordn.engendl;coutnn 词性: wordn.ciendl;coutnn 汉字: wordn.yinendl;coutn 按任意键返回m;break;case 5:exit(1);break;开始3.2 关键函数步骤图显示菜单输入选项 显示查找选项输入删除单词输入单词输入查找英文单词输入词性判定输入查找汉字单词 循环体输入汉字判定 判定 计算信息显示 循环体循环体 计算计算判定 结束显示查找信息显示无法找到判定 显示查找信息显示无法找到判定显示无法找到显示删除成功 4 系统调试l 开始菜单l 增加单词l 删除单词l 查找单词l 修改单词l 退出系统5 总结这次编程里,碰到几次数组溢出,原因是自己在开头没做好6 源程序清单