题目 B4:基于关键词的文本排序检索系统
一、 课题内容和要求
题目 B4:
(一)课题内容 “背单词—个性化背词”是背诵英语单词的软件。用户可以根据自己的需求 导入需背诵的词库,并可以编辑自己的词库。背单词时有两种模式供选择:系统 可以给出中文提示,用户输入对应的单词,也可输出单词让用户输入中文意思。 系统判定词义是否正确,如果正确提升该单词熟悉程度,如果不正确给出提示并 降低该单词的熟悉程度,同时对单词按照熟悉程度进行类别划分。
(二)课题要求
- 基本要求 代码要能提供以下几个基本功能。
(1)用户登录: ·新用户可以注册,旧用户直接登录。 ·可以只打卡不背词,直接退出界面。
(2)单词本: ·存储单词基本信息,英文、词性、中文解释等。 ·为了方便用户,可以提供已存储的单词本供用户选择。 ·选择词库维护编辑单词本信息,实现增加、修改、删除、补充(单词已有, 补充新的释义)的功能。
(3)单词背诵及成绩统计: ·按照用户选择的任务词量,随机选择单词预览进行单词学习。 ·单词背诵时有两种模式选择,选择题背诵及拼写单词背诵,支持多次背诵。 ·根据背诵情况对单词进行单词熟悉度归类。 ·可查阅单词本中各类熟悉度的单词总量。
(4)单词复习: ·背诵完全正确时界面显示没有错题继续努力。 ·有错题时可以选择错题重背加强记忆。
(5)退出系统时可以进行打卡,统计背诵单词天数。
\2. 扩展要求
(1)对用户的输入进行一定的正确性检查。
(2)能统计每一个单词出现频率及背诵正确率,供以后出题时提供依据。
【其他要求】
(1)变量、函数命名符合规范。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能, 对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。 (4)界面美观,交互方便。
二、需求分析
用户类的使用(class user)实现账号密码的注册和登录,利用析构函数和数组实现对单词本词性、释义的录入、修改和删除,以及单词熟悉度的统计和查询。并利用多个用户自定义函数使功能得到实现 ,示例如下:
图2.1部分用户自定义函数
三、概要设计
图3.1单词背记系统的流程图
注:该程序完成用户的注册必须输出3.退出才能完成用户账号和密码的保存。
首先进行用户账号密码的注册和登录,完成登陆页面后,7个序号分别对应了7项功能,用户可以根据需求输入相应的序号从而实现功能。
对于功能1、2、3:单词本的录入、修改和删除需要根据单词背诵系统的提示正确输出相应数据才能进行。
对于剩下的功能便如图所示进行操作即可:
图3.2功能4、5、6的操作指示图
四、详细设计 (部分核心代码)
头文件的使用
图4.1该函数所使用的头文件
#include 指令会指示 C 预处理器浏览指定的文件作为输入。预处理的输出包含了已经生成的输出,被引用文件生成的输出以及#include指令之后的文本输出。
图4.2调用用户自定义函数
利用析构函数和数组实现对单词本词性、释义的录入、修改和删除以及单词熟悉度的统计和查询。析构函数对象消亡时被自动调用,可以定义析构函数做对象消亡时的善后工作,比如释放内存等
用户类的创建,用于实现用户账号密码的注册和登录**…**
图4.3析构函数和构造函数的使用
类是用户自定义的类型,如果程序中要用到类,必须提前说明,或者使用已存在的类
(别人写好的类、标准库中的类等)
定义用户自定义函数