- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件项目技术报告
软件项目技术报告编写人:学号:日期:项目背景项目实施主要目的在我国的各级人民法院,为了记录庭审现场各类人员(包括:司法人员、嫌疑人、律师等)的谈话内容,有一批工作人员专门负责此项工作,这批工作人员被称之为“速录员”。速录员要求具有很快的文字录入速度和较高的录入准确率,以保证庭审记录的完整性和准确性。因此,如何有效地评测速录员录入文字的速度以及准确率是各级人民法院在招聘和考核速录员时需要面对的难题。此项目是为评测速录员素质编写的测试程序。编写意义快速判断出使用人员的打字速度与准确率,保证法院录取速录员时能高素质的人员。相关背景知识Visual Studio 2013下使用C++语言独立开发。项目研究内容音频播放问题系统的主要功能为测试考试人员在听到对话时能否快速记录下来的能力,因此系统需要播放音频以供考试人员进行测试。通过使用MCI(Media Control Interface,媒体控制接口)中的相关函数,成功为系统添加了音频。系统提供了不止一个题目供人员考试,因此在考试人员选择相应的考试编号时,需要播放相应的音频。通过使用MFC中组合框的相应功能,switch (m_combo.GetCurSel()),获取组合框中的信息,播放相应音频。在考试人员选择提交后,或者当音频播放完毕后,需要结束音频播放。用到了自定义函数OnStop()。身份证校验考试进行之前需要考试人员填写考生号和身份证号码已确认身份信息,如何确认输入的身份证号码是否合法是项目研究遇到的第二个问题。考虑到中国人民共和国居民身份证的位数为18位,而第十八位的数字或字母是由前17位数字所决定的,在阅读相应资料和上网查找对应代码后,了解到了具体的实现方法。1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。2、将这17位数字和系数相乘的结果相加。3、用加出来和除以11,看余数是多少?4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。5、通过上面得知如果余数是3,就会在身份证的第18位数字上出现的是9。如果对应的数字是10,身份证的最后一位号码就是罗马数字x。例如:某男性的身份证号码为,我们看看这个身份证是不是合法的身份证。首先我们得出前17位的乘积和【(5*7)+(3*9)+(0*10)+(1*5)+(0*8)+(2*4)+(1*2)+(9*1)+(2*6)+(0*3)+(0*7)+(5*9)+(0*10)+(8*5)+(0*8)+(1*4)+(1*2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一个正确的身份证号码。为了更加确保输入身份证件号的合法性,除了对最后一位进行校验以外,还应该对日期年份进行校验。首先获取到用户输入的身份证号,第七位到第十位为用户的出生年份。根据用户输入的出生年份首先判断是否为闰年,若为闰年且第十一位和第十二位的月份为二月,那么十三到十四位的日期必须为小于等于28的数字。且除一三五七八十腊月,其他月份的日期没有31号。以上保证了用户输入身份证的合法性。倒计时功能评测人员在测试时需要系统有倒计时功能限制考试人员的答题时间,如何为系统添加倒计时功能,并且在考试人员提交时或者计时为零时停止计时,是编写项目遇到的第三个问题。与其他人讨论获知,MFC中有相应的计时函数OnTimer(UINT_PTR nIDEvent),此函数在执行SetTimer(.., …., ..);时被调用,第一个参数为时间器的编号,第二个参数为每多少毫秒调用OnTimer(),若实现倒计时功能,则设置为1000毫秒,并且在OnTimer()函数中设置总时间减少1,在资源视图中设置一个专为倒计时准备的编辑框,让倒计时的信息在编辑框中显示,这样实现了倒计时的功能。在运行测试时又遇到了另一个问题,在SetTimer()函数每运行一次时,其相应的编辑框会刷新一次已更新时间,但是其他的编辑框也会更新,这样用户在答题编辑框打字时也会被刷新掉。如何只让倒计时所在的编辑框刷新而又不影响其他控件呢?自行研究后,使用了以下代码: CEdit *pedit = (CEdit*)GetDlgItem(IDC_time);//这样获取Edit编辑框的指针pedit-SetWindowText(m_time);这样就实现了只让一个编辑框刷新而不影响其他编辑框的输入。配置文件计算用户成绩时需要有相应的权重和参数,这些参
文档评论(0)