导航:首页 > 源码编译 > 自动阅卷源码

自动阅卷源码

发布时间:2022-09-18 21:40:40

A. c#建立网上考试自动答题阅卷系统的源代码 请高手帮忙

sorry, i can't help you.

B. 求c++自动阅卷程序,急用

走开哦

C. VB怎么做自动阅卷系统啊

参考网站 http://www.biyeok.cn/xzProject-597.html教案下载 http://www.biyeok.cn/UploadCase/.rar自动 阅 卷 系统是计算机应用能力的普及培训及考核中理论性和实践性都很强的一个课题,要考虑到语法分析、交互式特性、多线程并行处理特性、消息处理、数据处理、系统健壮性等诸多技术上的难题。因此,自动阅卷这一课题具有很高的研究和实用价值,我们选择这一领域作为研究方向。VisualBasic是由微软推出的用于Windows程序设计优秀编程语言。它象Basic语言一样简单易学,但并不因为它简单易学而减弱了功能。此外,它还引入了可视化的和面向对象的程序设计方法,使应用程序的开发效率大大提高。读者可以通过学习VisualBasic,很快掌握面向对象和事件驱动程序设计方法,为今后学习其他更复杂的程序设计语言打下基础,同时也可以用它结合自己的工作实践开发各种应用程序。所以Visual Basic程序设计在今后的培训及考核中将占据越来越重要的地位。因此 , 我 们开发了面向VisualBasic程序设计培训考核的自动评阅系统,从理论和实践两方面对这个课题进行深入而细致的研究。在完 成 本 论文的过程中,解决了以下几个关键问题:l) 运 行 在WindowsN T平台下,使用真正的多任务32位计算机系统,使研制的系 统 运 行 更 稳 定 、更安全。2) 在 WindowsN T下,采用消息机制,模拟驱动用户程序。3) 引 入 脚本策略,对用户提供一个友好的接口,适应不同的VB应用程序的考核 。4) 模 块 化设计程序,实现了用户程序与系统的协同工作。5) 克 服 用户程序中所出现的各种错误对阅卷系统的影响,保证系统运行的健壮 性 。本论文的章节安排及各章的主要内容第 l章 分析了对VB程序实现自动评阅可行性,在对VB程序深入分析的基础上,提出了静态判断和动态判断相结合的总体构思。第 2章 介绍评阅系统的总体构架,以及系统特点、实现的界面和设计原理。第 3章 详细介绍了面向对象的设计技术在本系统中的应用,并对影响系统健壮性和阅卷正确性的设计方案做了详细论述。第 4章 介绍了在系统设计过程中所实现的一些技术,包括数据库管理,系统与考生程序之间的通信方法,以及在批量阅卷过程中对用户的响应。

D. c++/java编程自动阅卷系统,求源码

自动阅卷,卷子怎么输入,扫描的影像? 字符怎么识别 答案怎样判断?

这种自动阅卷系统只能处理填空选择判断题,主观题目前的技术还不行

E. 在线考试系统中主观题自动阅卷的设计

随着在线考试模式的流行,在线考试系统也被使用的越来越频繁。使用考试云在线考试系统组织线上考试的时候,通常都需要先将试题导入系统,然后进行出题组卷,发布考试。在考试结束后,系统会进行自动阅卷,统计考试数据,公布成绩。

面对一些主观试题,在线考试系统也有自己的阅卷规则可以设置:
1、对于多选题或不定项选择题,支持设置漏选判分,可以按正确选项个数占比给出得分或者设置漏选的话只能得到试题总分的百多比,这个百分比可由管理员自行设置,如:一道4分的试题,正确答案为ABC,设置的得分占比为25%,那么,不管是只选了A还是选了AB,都能得2分,这样的判分方式更显人性化,也能适应不同考试业务的判分需求。
2、对于填空题,尤其是有多个填空答案的时候,无法灵活的判分。支持“判分时不区分答案先后顺序”和“只有匹配答案的部分关键词即可得分”的设置。
3、对于问答题、分析题这种主观性比较强的题型,可以设置得分点来进行阅卷,每个得分点都可以设置得分比例,如果是重要的得分点,我们在设置得分比例的时候可以将比例设置的大一点,得分点设置的越详细,判分就会越准确。

F. 电脑阅卷

光标阅读机(OMR)

光标阅读机(Optical Mark Reader缩写OMR),它是一种集光、机、电于一体的计算机外设录入设备。使用光标阅读机录入信息,真正解决了计算机运算快而人工录入慢的“瓶颈”问题。比手工敲键盘录入速度提高数百倍,特别是长时间不知疲倦的工作,是人无法比拟的,是目前其它任何技术无法替代的。现有单面单读(FS)、单面双读(FD)、双面单读(FBS)、双面双读(FBD)等13个系列36个品种。广泛应用于教育、交通、人事、财政、金融等诸多领域的考试、统计、选举、测评等。

光标阅读机(OMR)在现代教育中的作用

目前,光标阅读机(以下简称OMR)已在高考、中考、会考的阅卷中普遍使用。除外,OMR在日常教学及学校管理等方面也日趋被大家高度重视并广泛应用。具体讲,有以下八个方面:
一、OMR能应用于入学考和期中、期末考试中。
过去考试后,由于阅卷工作量大,教师不得不连夜加班评阅试卷,尽管加班,也不能很快阅完。几天过去,学生对考题内容淡漠,再分析试题中的问题效果就差。现在,我们用OMR阅卷,一般上午考试下午阅完,随即打印出成绩、统计、分析报表。
其报表内容很多,一般常用的有四种:一是某学生考试的各科分数和总分数及在年级、班级的名次。老师对每一学生成绩分析,找出存在的问题及原因,给予针对性的指导。二是某班的各科平均分数和总分平均分数在年级的名次。三是某年级、某班级、某学生的考试成绩与历次考试成绩比较。四是将考试原始分数转换成标准分,可使班级之间、学生之间和课程之间的成绩有可比性,科学的、全面的、准确的反映出各科各班和各学生之间的真正名次,为任用和奖励教师及学生提供可靠依据。实践使我们深深体会到:OMR是教学及学校管理的好助手,一旦用上就离不开。
二、OMR能应用于课堂教学环节中
例如:各节课达标小测,是目标教学中的重要环节,它不但能使教师准确全面的摸清学生掌握本节课内容的状况,而且还能有效促进学生学习的积极性。在传统教学方式中,有的通过课堂提问的形式完成这一教学环节,这只能显示个别学生的达标情况,有的则将学生各节课的作业或小测答卷集中起来,逐一用红笔勾画批改,这无疑耗费了教师大量的时间与精力。而应用OMR就简便多了,临下课二、三分钟前,教师口述准备好的测试题目(无需在黑板上抄题,也不用印制试卷),学生将所选的答案涂在卡上(不必写出答案内容,思考时间更为充裕),然后将答题卡送入OMR,只需课间短短的几分钟就能实现五种功能:
(一)能让教师清楚地了解每个学生的成绩。
(二)能统计最高分、最低分、平均分、各分数段的人数与及格率。这样,教师可根据以上这些客观详尽的结果,随时查找、改进授课中的不足,因材施教,不断的提高教学质量;学生也可以根据这一明晰的测验结果,及时发现疑难问题,寻找差距,调整学习方法,不断提高学习成绩。可见,课堂教学中应用OMR,起到了直观、高效、准确的作用。
(三)能迅速生成考题错误率排行榜,每题错误率一目了然,直接切入教学中的薄弱环节。
(四)能每题分析,每题为何而错,一目了然。例如:一道题的正确答案是B,答对率是62%,其余三个迷惑选项A、C、D在答错该题的人数中所占比例分别为A:66%、C:19%、D:15%,这样可以准确得出:在迷惑选项中A的迷惑性最强,最容易与正确答案B混淆。通过比较错误思维A与正确答案的记忆,从而提高学生考试成绩。
(五)能提高升学率。日常涂卡和中考、高考涂卡对学生的要求相同,经常涂卡的学生不仅涂卡动作快、节省时间,相对延长了答主观题的时间,还能涂卡规范、正确,达到不因涂卡而失分数。
反之,不经常涂卡的学生,中考、高考时不适应涂卡,动作慢、时间长,相对占用答主观题时间,特别是涂卡不规范,常常会造成考试丢分。
最近几年,很多学校深深体会到:中考、高考中因学生涂卡不熟练、不规范失去3-5分,而降低升学率的现象太普遍、太可惜。实践证明:经常涂卡、提高学生涂卡技巧也是提高升学率的一个重要环节。所以很多学校引起了高度重视,坚持经常涂卡的学校迅猛增加。

三、OMR能应用于学校管理中
例如:学生的学籍和教职工的档案管理,均可通过OMR读卡的形式自动读入计算机,建立电子档案,保存简单,查阅方便。特别是高考网上录取,集中录入学生的志愿、体检等信息,OMR更是必不可缺少的先进、快捷工具。

四、OMR能应用于学生成绩管理中

每年级每个班每学生的每一学科的主观题、客观题的成绩,都能够涂在成绩登录卡上,通过OMR,按照学校管理的不同需要,完成各种统计、分析、排序等工作。可见,OMR在学生成绩管理方面的应用不只是极大限度减轻了统计工作量,更重要的是准确。

五、OMR能应用于学校管理有关的多种社会调查
例如:学生家长对学校的评测等等。

六、OMR能应用于教学综合评价中
包括:学生评教师、领导评教师、教师互评。例如学生评教师:学校对任课教师的教学质量评价,可根据具体情况设置评价项目(如:教学态度、教学方法、业务素质、纪律考勤等),让学生给予每个教师涂卡打分,通过OMR给予教师公正、客观、精确的分值。由于应用OMR可自行设定各个评价项目,故使得群体对个人的量化评价更加明朗、客观、准确。能避免被评价为落后教师误认学校领导任人唯亲、优亲厚友而造成的矛盾,真正实现领导、教师心平气和,激励先进,鞭策后进。
七、OMR能应用于素质教育中
对学生的心理测试、身体测试、德育测试、体育达标测试、课外活动测试等方面可以应用OMR读出测评结果。

G. 求选择题自动阅卷java源代码,能在my eclipse上运行出来,有界面

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Game extends JFrame implements KeyListener,Runnable
{
Thread Down10 = new Thread(this);
GameCanvas test = new GameCanvas();
JLabel LabelTetris = new JLabel("Tetris Game");
JLabel ScorePrint1 = new JLabel("Score");
JLabel ScorePrint2 = new JLabel("0"+test.Score);
Game()
{
setSize(400,800);
setVisible(true);
setLayout(new FlowLayout());
test.addKeyListener(this);
LabelTetris.setBackground(Color.white);
LabelTetris.setFont((new Font("Tahoma",1,50)));
ScorePrint1.setFont((new Font("Tahoma",1,40)));
ScorePrint2.setBackground(Color.white);
JLabel LM = new JLabel("L.M");
ScorePrint2.setFont((new Font("Tahoma",1,40)));
add(LabelTetris);
add(test);
add(ScorePrint1);
add(ScorePrint2);
LM.setForeground(Color.white);
add(LM);
validate();
Down10.start();
}
public void run()
{
while(true)
{
try
{
test.Down1();
Down10.sleep(700);
}
catch(InterruptedException I){I.printStackTrace();}
}
}
public void keyPressed(KeyEvent K)
{
if(K.getKeyCode()==KeyEvent.VK_LEFT)
test.Left1();
else if(K.getKeyCode()==KeyEvent.VK_UP)
test.Turn();
else if(K.getKeyCode()==KeyEvent.VK_RIGHT)
test.Right1();
else if(K.getKeyCode()==KeyEvent.VK_DOWN)
{
test.Down1();
if(test.ScoreBool==1)
{ScorePrint2.setText(""+test.Score);}
}
}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
}
class GameCanvas extends Canvas
{
int x=5,y=0;
int GameMap[][]=new int [50][100];
int BlockShape;
int BlockWay;
int Score=0;
int ScoreBool=0;
int OverBool=0;
public final static int[][][] Blocks={{{0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0},
{0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0},
{0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0},
{0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0}},
{{0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0},
{1,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0},
{0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0},
{1,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0}},
{{1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0},
{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0},
{1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0},
{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0}},
{{0,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0},
{1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0},
{1,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0},
{1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0}},
{{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},
{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},
{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},
{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0}},
{{1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0},
{1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0},
{1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0},
{0,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0}},
{{0,1,0,0,1,1,1,0,0,0,0,0,0,0,0,0},
{0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0},
{1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0},
{0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0}}};
GameCanvas()
{
setSize(340,500);
setBackground(Color.BLACK);
for(int i=0;i<25;i++)
{
GameMap[0][i]=2;
GameMap[16][i]=2;
}
for(int i=0;i<16;i++)
{
GameMap[i][24]=2;
}
}
public void NewBlocks()
{
x=5;y=0;
BlockShape=(int)(Math.random()*6);
BlockWay=(int)(Math.random()*3);
if(IsOver(x,y)==true)
{OverBool=1;}
}
public void Keep(int x,int y,int BlockShape,int BlockWay)
{
int n=0;
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
{
if(GameMap[x+j+1][y+i]==0)
{
GameMap[x+j+1][y+i]=Blocks[BlockShape][BlockWay][n];
}
n++;
}
}
public void paint(Graphics G)
{
G.setColor(Color.white);
for(int i=0;i<16;i++)
{
if(Blocks[BlockShape][BlockWay][i]==1)
G.drawRect((i%4+x+1)*20,(i/4+y)*20,20,20);
}
for(int i=0;i<30;i++)
for(int j=0;j<50;j++)
if(GameMap[i][j]==1||GameMap[i][j]==2)
G.fillRect(i*20,j*20,20,20);
}
public void Turn()
{
if(IsFeasible(x,y,BlockShape,BlockWay)==1)
{
BlockWay=(BlockWay+1)%4;
repaint();
}
}
public void Left1()
{
if(IsFeasible(x-1,y,BlockShape,BlockWay)==1)
{
x-=1;
repaint();
}
}
public void Right1()
{
if(IsFeasible(x+1,y,BlockShape,BlockWay)==1)
{
x+=1;
repaint();
}
}
public void Down1()
{
if(IsFeasible(x,y+1,BlockShape,BlockWay)==1)
{
y+=1;
repaint();
}
else if(IsFeasible(x,y+1,BlockShape,BlockWay)==0)
{
Keep(x,y,BlockShape,BlockWay);
Deline();
if(OverBool==0)
NewBlocks();
}
}
public int IsFeasible(int x,int y,int BlockShape,int BlockWay)
{
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
if(Blocks[BlockShape][BlockWay][i*4+j]==1&&GameMap[x+j+1][y+i]==1)
return 0;
else if(Blocks[BlockShape][BlockWay][i*4+j]==1&&GameMap[x+j+1][y+i]==2)
return 0;
}
}
return 1;
}
public void Deline()
{
int BlocksSum = 0;
for(int i=0;i<25;i++)
{
for(int j=0;j<16;j++)
{
if (GameMap[j][i]==1)
{
BlocksSum++;
if (BlocksSum==15)
{
for(int p=i;p>0;p--)
{
for(int q=0;q<16;q++)
{
GameMap[q][p]=GameMap[q][p-1];
}
}
Score+=10;
ScoreBool=1;
}
}
}
BlocksSum = 0;
}
}
public boolean IsOver(int x,int y)
{
if(IsFeasible(x,y,BlockShape,BlockWay)==0)
return true;
else
return false;
}
}
public class Tetris
{
public static void main(String[] args)
{
Game test2 = new Game();
}
}

拿去玩 JAVA新建文件命名为 Tetris 以前写的 懒得布置界面

阅读全文

与自动阅卷源码相关的资料

热点内容
人人影视路由器固件编译 浏览:965
照片通讯录短信怎么从安卓到苹果 浏览:456
逻辑开发编译环境 浏览:670
ce自己编译 浏览:896
javaexe进程 浏览:478
电脑wechat是什么文件夹 浏览:956
单片机moc3041 浏览:786
at命令串口助手 浏览:749
吸血app怎么关闭 浏览:35
云服务器地图不见了怎么办 浏览:240
mc服务器应该叫什么名字 浏览:607
推拉门增加密封性 浏览:731
服务器搬家需要什么 浏览:541
普通电脑如何添加服务器 浏览:401
在外包公司如何成为优秀的程序员 浏览:413
无服务器如何开发 浏览:802
怎么改中国移动服务器 浏览:779
一年程序员发展规划 浏览:986
个人发卡网弹窗源码 浏览:472
返诈骗app推广码如何弄 浏览:858