大家都来挑战一下难度!考试系统找出作弊的人!

liaodanz 2007-11-22 01:09:51
虽说不是项目中..
假设有一个考试系统...ABCD型的答案...
怎么找到答案相似度高的同学...用来方便查找是否有人作弊..
除了一个个用费时的for的话有没有更好的办法..数据表又怎么建?
...全文
179 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Oceanson 2007-11-23
  • 打赏
  • 举报
回复
有一个不太符合数据库设计规范,但是可以极大提高匹配效率的方法,可以作为冗余数据表处理。

表结构:(为了叙述方便暂且陈为Table_Info_AnswerAll)
StudentNum varchar{50}
StudentAnsewer varchar{200} //假设100道题目 如果不在乎空间用Max也可以

原理:
在每次把答案保存到正常数据表的同时把答案以一个字符串的形势写入上面的表(Table_Info_AnswerAll)中
结构如下:
A,B,D,,E,A
其中如果为空表示没有选择答案。

匹配相似性:
然后这个匹配在.net里面就变得非常容易
只需要遍历Table_Info_AnswerAll这一个表
用正则表达式设置匹配的字段长度(正则我不精通,但是我知道写的好一句或者几句的组合就可以满足你的要求了)
whoo529 2007-11-23
  • 打赏
  • 举报
回复
只能查看几率,不能说别人错的一样对的一样就说别人作弊 了吧...
就如同彩票中奖一样,错对都用相同的,相对几率多少而已

搞两个for循环,全部相同,一个不同,两个不同....
liaodanz 2007-11-23
  • 打赏
  • 举报
回复
晕~~~!没有人想得出?自己顶!!
wind_rove 2007-11-22
  • 打赏
  • 举报
回复
楼主有意思,回去想想
flybird_13 2007-11-22
  • 打赏
  • 举报
回复
电脑在某些特定情况下还是不能代替人的啊~
liaodanz 2007-11-22
  • 打赏
  • 举报
回复
可以查找一下错误答案相同...连错误的都差不多~~~!肯定的啦..而且是查的相似度..不是100%.只是拿来参考下是不是真作了弊..反正我没想到什么好的算法...比较费时..
lengyeyu 2007-11-22
  • 打赏
  • 举报
回复
选择题判断有没有作弊是不行的
利用主观题程序也查不来
这事还要人做
cpio 2007-11-22
  • 打赏
  • 举报
回复

可以比较有几个答案不一样

肯定得循环啊,至于用for还是while就看你了

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧