早就想设计一个在线的网络考试系统,但是笔者的编程技术有限,暂时还无法完成一个正规的考试系统后来经过摸索,笔者使用Excel完成了一个简单的考试系统,经过几次考试的实验与改进,完全可以在平时的教学中运用现把实现的方法与大家分享。
早就想设计一个在线的网络考试系统,但是笔者的编程技术有限,暂时还无法完成一个正规的考试系统后来经过摸索,笔者使用Excel完成了一个简单的考试系统,经过几次考试的实验与改进,完全可以在平时的教学中运用现把实现的方法与大家分享。
服务器端设置 首先在教师机上建立一个test文件夹,并建立两个电子表格文件,分别命名为“test.xls”和“汇总.xls”,其中“test.xls”为试卷文件,“汇总.xls”是用来汇总的文件同时在该文件夹内建立58个文件夹(假设58个学生机),可以通过批处理的方法实现:。
md s1 md s2 …… md s58 然后再将test.xls文件分别复制到这58个文件夹中:我们可以首先向s1中复制一个test.xls文件,然后再执行copy.dat,copy.dat内容如下:
copy s1test.xls s2 copy s2test.xls s3 …… copy s56test.xls s57 copy s57test.xls s58 现在每个文件夹中都有一个test.xls了,下面我们编辑test.xls和汇总.xls文件。
1.试卷test.xls的设置 test.xls如图1所示(假设以20道选择题为例)其中C1单元格为姓名填写处,E1单元格为学号填写处,A3~A22为答案填写区(20道题),选择题的选项用数字“1、2、3、4”,不要用字母,以防止学生输入字母与空格的混合。
并把答题区的颜色设置为灰色,防止学生抄袭
图1 test.xls文件2.汇总.xls的设置 如图2所示,建立两个表,第一个为答案表,用来收集试卷的第一列的答案和学号姓名A2单元格为“=D:tests1[test.xls]选择填空题!$E$1”(统计学号),B2单元格为“=D:tests1[test.xls]选择填空题!$C$1”(统计姓名),C2:V2分别为“=D:tests1[test.xls]选择填空题!$A$3”(统计答案)、“=D:tests1[test.xls]选择填空题!$A$4”……“=D:tests1[test.xls]选择填空题!$A$22”。
图2 汇总.xls文件然后选中A2:V2,将鼠标移动到右下角,变成黑色十字的时候,向下拖动到第59行(假设有58台学生机),此时第3~59行与第2行是相同的,都是“=D:testtests1[test.xls]……”,这里需要改一下,第4行改为s2、第5行该为s3,依次类推。
为了更快捷,也可以使用“编辑”菜单中的“替换”命令,将每行中的“s1”替换掉 然后再设计分数表,用来判断对错并统计分数,如图2所示c2中输入“=IF(答案表!C2=C$61,$C$62,"0")”,将标准答案写在从c61单元格开始的第61行,该公式表示:如果c2等于标准答案c61单元格的数值,则显示c62指定的分数,否则为0分。
然后选中该单元格,鼠标移动到右下角横向拖动20个格,然后再选中第一行纵向拖动58个格 在C62中输入“2”,表示每道题2分,如图3所示如果正确给2分,如果错误给0分然后分别横向求和,就可以得到每个学生的分数。
图3 分数设置学生机端设置 首先在学生机上建立一个隐藏共享文件夹,笔者所在机房中的d盘都是隐藏共享的教师机上再共享一个“test$”共享文件夹,教师把考试文件复制到其中,让学生访问教师机上的“领取试卷”共享文件夹,运行其中的“领取试卷.dat”,内容为“copy teachertest$test.xls d:”。
这样试卷就复制到学生机的桌面上了,学生在指定的地方填好答案后单击[保存]按钮即可,考试结束时,教师运行收试卷程序: copy s1d$ test.xls D:tests1 copy s2d$test.xls D:tests2
…… copy s58d$test.xls D:tests58 并把统计.xls复制到d:test文件夹中,打开统计.xls,成绩就一目了然了。