多选题应该怎么评分???给点意见
多选题库里有答案,有A1,B1,C1,D1字段,选中的为1,不选为0,想个办法给多选题评分,我认为有点复杂,不象单选题。我开始想加一个临时存储字段,选一个存一个,再和答案比较,相同的得分,但不怎么好用。 问题点数:10、回复次数:6Top
1 楼qqqdong()回复于 2003-04-01 11:54:15 得分 0
8421吗,
多选题不是也只有16中吗?Top
2 楼foko_zl(笑刀)回复于 2003-04-01 12:01:36 得分 10
提供一种思路:
二进制编码,例如答案是
A1=1,B1=0,C1=0,D1=1 =>1001
选择是:
A1=1,B1=0,C1=1,D1=0 =>1010
1001 AND 1010 =>1000
把结果转换成字符串,查找有几个 1 即可。
这样对单选也同样适用。
Top
3 楼980()回复于 2003-04-01 13:40:25 得分 0
楼上的,能给点代码吗Top
4 楼980()回复于 2003-04-01 13:48:43 得分 0
我现在很急,麻烦各位帮帮忙,给点代码Top
5 楼foko_zl(笑刀)回复于 2003-04-01 19:54:43 得分 0
上面的思路还是稍嫌麻烦,其实很简单啊,就不知道合不合你意:
dim bAnswer(3) as Boolean ' 回答
dim nCorrect as Integer'正确答案
dim nCount as Integer,AnswerCorrect as collection
...
' 访问数据库,得到数据 =>rs
' 回答 =>bAnswer()
bAnswer(0) = bAnswer(0) AND rs("A1")
bAnswer(1) = bAnswer(1) AND rs("B1")
bAnswer(2) = bAnswer(2) AND rs("C1")
bAnswer(3) = bAnswer(3) AND rs("D1")
for i=0 to 3
if bAnswer(i) then nCount=nCount+1
' 如果要知道那些答对了
AnswerCorrect.Add i
next i
' nCount 就是答对的题目数
...Top
6 楼foko_zl(笑刀)回复于 2003-04-01 20:01:38 得分 0
不好意思,写错了。重写吧。
dim bAnswer(3) as integer ' 回答,1 =选中 0=未选中
dim nCount as Integer
dim rs as adodb.recordset
...
' 访问数据库,得到正确答案 =>rs
' 回答 =>bAnswer()
nCount=0
if bAnswer(0) AND rs("A1") then nCount=nCount+1
if bAnswer(1) AND rs("A1") then nCount=nCount+1
if bAnswer(2) AND rs("A1") then nCount=nCount+1
if bAnswer(3) AND rs("A1") then nCount=nCount+1
' nCount 就是答对的题目数
...
Top




