使用VC++开发考场随机排座系统
2009-02-27 20:02:47 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鐐劤缂嶅﹪寮婚悢鍏尖拻閻庨潧澹婂Σ顔剧磼閹冣挃闁硅櫕鎹囬垾鏃堝礃椤忎礁浜鹃柨婵嗙凹缁ㄧ粯銇勯幒瀣仾闁靛洤瀚伴獮鍥敍濮f寧鎹囬弻鐔哥瑹閸喖顬堝銈庡亝缁挸鐣烽崡鐐嶆棃鍩€椤掑嫮宓佸┑鐘插绾句粙鏌涚仦鎹愬闁逞屽墰閹虫捇锝炲┑瀣╅柍杞拌兌閻ゅ懐绱撴担鍓插剱妞ゆ垶鐟╁畷銉р偓锝庡枟閻撴洘銇勯幇闈涗簼缂佽埖姘ㄧ槐鎾诲礃閳哄倻顦板┑顔硷工椤嘲鐣烽幒鎴旀瀻闁规惌鍘借ⅵ濠电姷鏁告慨顓㈠磻閹剧粯鈷戞い鎺嗗亾缂佸鏁婚獮鍡涙倷閸濆嫮顔愬┑鐑囩秵閸撴瑦淇婇懖鈺冪<闁归偊鍙庡▓婊堟煛鐏炵硶鍋撻幇浣告倯闁硅偐琛ラ埀顒冨皺閺佹牕鈹戦悙鏉戠仸闁圭ǹ鎽滅划鏃堟偨缁嬭锕傛煕閺囥劌鐏犻柛鎰ㄥ亾婵$偑鍊栭崝锕€顭块埀顒佺箾瀹€濠侀偗婵﹨娅g槐鎺懳熺拠鑼舵暱闂備胶枪濞寸兘寮拠宸殨濠电姵纰嶉弲鎻掝熆鐠虹尨宸ョ€规挸妫濆铏圭磼濡搫顫嶇紓浣风劍閹稿啿鐣烽幋锕€绠婚悹鍥у级瀹撳秴顪冮妶鍡樺鞍缂佸鍨剁粋宥夋倷椤掍礁寮垮┑鈽嗗灣閸樠勭妤e啯鍊垫慨妯煎亾鐎氾拷

1、引言
随着国内高等教育信息化的推进,办公自动化等现代信息技术的广泛应用,考试管理的信息化方面也有了长足的发展。大部分的院系在考试过程中为了做到严格纪律,都纷纷采用了随机排座机制来保障考试的顺利进行。但是,传统的随机座号机制是通过考前人工排序或在考场内随机抽号的方式进行的,这就耗费了大量的人力和时间,造成效率低下,为此,我们开发了一个简单的考场随机排座系统。
2、设计内容
根据考场随机排座的要求,整个系统由以下的模块组成:数据导入、排序处理、打印输出。除此之外,还要求系统具有良好的人机界面。
数据导入工作的对象是欲排序的名单,由于大部分的学生信息采用EXCEL格式或者WORD文档格式进行存储,所以,首要的工作是要将这些格式文档读入排座系统。
对于排座系统中各个记录的随机排序,应避免VC++中伪随机数机制可能带来的影响,为每条记录分配一个真正的符合数学规律的随机值。
数据的输出部分包括模拟显示和打印两部分,将对随机排序后的结果进行输出,生成考场座次表,和试卷一起密封,方便监考人员在考试之前进行宣读。
软件系统主要采用VC++ 6.0编写,整个系统是基于对话框的应用程序,程序的主界面采用了列表视图控件,打印和显示部分则利用了MFC的打印机制。
3、关键技术
3.1数据导入
由于每一个考生在入学时就已经在学院的管理系统中具有了相应的信息,只需要将该信息导入排座系统即可,也可以通过人工的方式进行录入,本系统支持EXCEL和TXT两种格式的数据导入。EXCEL格式的考生信息导入排座系统的方法主要有两种:一种是通过ODBC数据接口对EXCEL格式的文件进行读取[1],该方法需要熟悉SQL语法和数据库操作的相关知识,文献[1]介绍了该方法的详细操作步骤;另一种方法则是利用工具软件XLS Converter先将EXCEL格式的文件转换为TXT文件[2],然后再利用VC本身的文件操作函数进行读取,本系统采用了这种方法,即利用VC调用文件转换引擎将EXCEL转换为TXT格式。实现的部分核心代码如下:
更多精彩
赞助商链接