使用C语言怎么实现单词助手功能
使用C语言怎么实现单词助手功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
成都创新互联主要从事网站设计、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务泽普,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
题目要求:
1.改写程序为良好程序风格(文档注释,函数注释,语句注释)。
2.将单词测试中的功能完善,可针对做错的单词重复记忆。
3.查询单词的功能添加英文词查询,中文查询的功能完善(考虑如何显示同样中文意义,不同的英文单词)
分析:
要求2,将做错的单词保存在新的错词文件中,并增添加强记忆函数;
要求3,采用循环遍历,找寻与所输入中文意思对应的所有英文单词,并依据中文查询添加英文查询。
二、关键算法构造
错题巩固,英中流程图:
中文查询流程图:
三、程序实现
#include#include #include #define MAX_CHAR 20 // 最大字符 #define MAX_NUM 200 // 单词的最大个数 struct word //单词的结构体 { char en[MAX_CHAR]; // 英文形式 char ch[MAX_CHAR]; //中文形式 } s[MAX_NUM],r[MAX_NUM]; //单词数组 int num; //单词个数 int rnum; //需加强巩固的单词个数 int n=1,select=1; //select为是否退出系统的标记 int d=0,c=0; //c为回答错误的次数,d为回答正确的次数 //帮助 void help() { printf("\n本系统主要实现英语单词学习的功能。用户可对词典文件中的单词进行预览,增删改查。"); printf("\n同时还可进行中英、英中测试。本系统还提供了测试成绩的显示功能。"); } //从文件中读取单词的信息 void readfile() { FILE *fp;//声明一个文件 int i=0; fp=fopen("data.txt","r");//打开文件data.txt if(!fp)//若文件不存在 { printf("\n打开文件data.txt失败!"); } while(fscanf(fp,"%s %s ",s[i].en,s[i].ch)==2)//读取下一个单词 { i++; } num=i;//记录单词总数 if(0==i)//若单词数为0 printf("\n文件为空,请选择词典维护增加词条!"); else printf("\n"); fclose(fp);//关闭文件 } //向文件中写入单词的信息 void writefile() { FILE *fp;//声明一个文件 int i=0; fp=fopen("data.txt","w"); if(!fp)//若文件不存在 { printf("\n打开文件data.txt失败!"); } for(i=0;i i;j--)//循环遍历当前单词之后的单词 if(strcmp(s[j-1].en,s[j].en)>0)/*若字符串s[j-1].en大于字符串s[j].en,则通过中间变量调换两个字符串*/ { 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); } } } //添加单词信息 void add() { int i=num,j,flag=1;//定义变量 while(flag) { flag=0; printf("\n请输入单词的英文形式:"); scanf("%s",s[i].en);//将所添加单词放在已有单词末尾 for(j=0;j 四、调试,测试及运行结果
调试:
在选择错题巩固功能时,错题文件中的单词无法成功被调出,调试发现错题文件单词总数rnum=0,但实际并不为0
随及对单词背诵函数进行调试,发现错误的单词可以被正确的记录到错题文件中,且错题总数rnum的值是正确的
在经过检查分析后发现在调用错题巩固函数前没有调用读取错题巩固文件函数,添加后程序运行正确,rnum的值正确
测试:
开始中文查询只能查到排序在前的一个单词
对中文查询函数进行代码测试,将是否继续查询移出for循环,使循环遍历所有单词组,得到满足中文意思的所有单词
运行结果:
英中及中英查询:
中英单词背诵:
英中单词背诵:
错题巩固,增强记忆(中英及英中):
C语言是什么
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的方式编译、处理低级存储器。
关于使用C语言怎么实现单词助手功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
当前题目:使用C语言怎么实现单词助手功能
标题链接:http://scyanting.com/article/gchipj.html