自动考试系统课程设计报告

自动考试系统课程设计报告本文简介:《可视化编程技术课程设计》报告班级:xxx学号:xxxx姓名:xxxx题目:自动考试系统的设计一.引言近年来,计算机技术。Internet技术的迅猛发展,给传统的办学提出了新的模式。绝大部分大学和学院都已接入互联网并建成校园网,各校的硬件设施已经比较完善。但是在我国学校还是以传统的考试方式为主,,但
自动考试系统课程设计报告本文内容:
《可视化编程技术课程设计》
报告
班级:xxx
学号:xxxx
姓名:
xxxx
题目:自动考试系统的设计
一.
引言
近年来,计算机技术。Internet技术的迅猛发展,给传统的办学提出了新的模式。绝大部分大学和学院都已接入互联网并建成校园网,各校的硬件设施已经比较完善。但是在我国学校还是以传统的考试方式为主,,但面对现在这个告诉发展的社会,显然,这种传统的模式满足不了这个要求,故而出现了上机自动考试系统。
二.
系统设计
以图文配合的方式进行系统构成说明,对主要模块进行功能定义以及数据库进行定义,对数据处理、操作流程等描述。
自动考试系统
留言
管理员登录
考生登录
查询成绩
查看及修改试题
查看留言
留言
选择考试内容
所选考试类型试题作答
成绩评价
判断题
信息
选择题
选择题
三.系统实现
1、自动考试系统登录界面
登录界面,用户可以根据自己账户的权限等级选择管理或者用户登录,无需账号也可以进行留言
登录之前在load事件中调用信息数据库:
SqlConnection
con
=
new
SqlConnection();
con.ConnectionString
=
ConfigurationManager.ConnectionStrings[“a“].ToString();
con.Open();string
com
=
“select
from
信息“;
qlDataAdapter
ad
=
new
SqlDataAdapter(com,con);
d.Fill(set,“信息“);con.Close();
(1)学生登录:
将2个textBox中数据与信息中数据进行对比,如果同时正确则进入系统。如果用户名部分输入错误,显示无次用户,如密码部分输入错误则显示密码输入错误;
(2)管理员登录界面:
跳转管理员登录界面
:管理员登录界面
frm8
=new
管理员登录界面();frm8.Show();
【登录】
直接将2个textBox与指定只值对比,如全部符合则进入管理员界面(主要代码:if
(textBox1.Text
==
“148284“【留言】
留言时为将textBox内容直接写入设定好的文本文档中(主要代码:
string
add
=
“C:\\Users\\Dr.l\\Desktop\\新建文件夹
(2)\\留言板.txt“;
StreamWriter
write
=
new
StreamWriter(add,false,System.Text.Encoding.Default);
write.WriteLine(textBox1.Text);
rite.Close();
MessageBox.Show(“留言成功!“,“提示!“,MessageBoxButtons.OK);)
2、
管理员界面
管理员可以在界面中对试题进行查看,如试题错误可以进行修改。留言板可以直接查看学生对系统的留言,可根据需要对留言进行清除。成绩查看部分可以直接查看总体成绩或者以指定学号对学生进行查看
【留言板】
留言部分直接将所存text中信息进行读取(
StreamReader
read
=
new
StreamReader(“C:\\Users\\Dr.l\\Desktop\\新建文件夹
(2)\\留言板.txt“,System.Text.Encoding.Default);
textBox5.Text=
read.ReadLine();)
清除部分直接将本板内容clear并在文档中添加空数据以达到清除目的
【试题查看及修改】
(1)查看(试题选择以选择题为例)
SqlConnection
con
=
new
SqlConnection();
con.ConnectionString
=
ConfigurationManager.ConnectionStrings[“a“].ToString();
con.Open();string
com
=
“select
from
选择题“;
SqlDataAdapter
ad
=
new
SqlDataAdapter(com,con);ad.Fill(set,“选择题“);
dataGridView1.DataSource
=
set.Tables[“选择题“];
con.Close();
将数据库中选择部分调用至表中效果如下
(2)
修改(仍以选择为例效果如下)
按题目序号在数据库中查询这一行数据,将修改试题或者答案覆盖已有信息{主要代码:
string
del
=
string.Format(“update
填空题
set
题目=
{0},答案=
{1}
where
序号=
{2}
“,textBox1.Text,textBox2.Text,textBox4.Text);
SqlCommand
com
=
new
SqlCommand(del,con);
com.ExecuteNonQuery();
SqlDataAdapter
da
=
new
SqlDataAdapter(“select
from
填空题“,con);
DataSet
ds
=
new
DataSet();
da.Fill(ds,“填空题“);
dataGridView1.DataSource
=
ds.Tables[“填空题“];}
【成绩查询】
总体成绩查询与特定序号雷同,特定学号即在数据库中搜索指定行,总成绩即将信息列表全部列出(以特定学生主要代码为例)
string
str
=
“select
from
信息
where
账号
like
“+
textBox3.Text
+
““;
SqlDataAdapter
da
=
new
SqlDataAdapter(str,con);DataSet
ds
=
new
DataSet();
if
(da.Fill(ds,“信息“)
==
0)MessageBox.Show(“没有此人“,“提示“,MessageBoxButtons.OK);
elsedataGridView1.DataSource
=
ds.Tables[“信息“];
(因未进行考试所以成绩未录入)
3、
考试界面(填空考试为例)
【1】题目切换按钮功能相似(以下一题为例)
button1.Enabled
=
true;
//使上一题按钮不可用
if
(flg
==
0)tkr.Add(textBox1.Text);
else
if
(flg
==
1
||
tkn
==
4)tkr[tkn]
=
textBox1.Text;
//if和else
if将所输入答案存储
if
(tkn
0)
{
scss--;
if
(scss
==
0)
{
mint--;
label1.Text
=
mint.ToString()
+
“分“;
scss
=
59;
}
label2.Text
=
scss.ToString()
+
“秒“;
}
else
if
(mint
==
0)
{
scss--;
label2.Text
=
scss.ToString()
+
“秒“;
if
(scss
==
0)
{
timer1.Enabled
=
false;
;
DialogResult
dr;
dr
=
MessageBox.Show(“考试时间到!请选择确定来进行试卷评判或者按取消来退出系统,谢谢合作。“,“考试结束“,MessageBoxButtons.YesNo,MessageBoxIcon.Information);
if
(dr
==
DialogResult.Yes)
{
Class1.stlx
=
1;
考试评价
frm5
=
new
考试评价();
frm5.Show();
for
(int
i
=
0;
i
<
5;
i++)
if
(tka[i].ToString()
==
tkr[i].ToString())
Class1.tkcj
+=
10;
this.Close();
}
}
}
【3】提前交卷按钮
单击后提示是否交卷,此时timer停止,如果是的话则记录成绩并弹出考试评价界面,否则继续答题timer继续运转
this.Hide();
DialogResult
js;
timer1.Enabled
=
true;
js
=
MessageBox.Show(“点击确定将交卷,点击取消则继续答题!“,“考试提示!“,MessageBoxButtons.OKCancel,MessageBoxIcon.Asterisk);
if
(js
==
DialogResult.OK)
{
for
(int
i
=
0;
i
<
5;
i++)
if
(tka[i].ToString()
==
tkr[i].ToString())
Class1.tkcj
+=
10;
考试评价
frm5
=
new
考试评价();
frm5.Show();
}
else
if
(js
==
DialogResult.Cancel)
{
this.Show();
timer1.Enabled
=
false;
}
4、考试评价界面
将考试界面的成绩进行运算并分别填入对应label中,重新作答返回选题界面
四.
结论
在本系统中管理员可以快速的查看修改试题,了解学生意见。学生可以对自己答题情况进行直观的观察,方便学习和发现自己的提高。但当前题库过于简单,试题类型也不够完善,仍可以加入注册,排名,错题辨析,考试技巧系统。界面也仍可以进行继续优化。比如添加背景图片,欢迎滚动条,鼓励的话,考生多次考试时可以进行推荐行暂停使学生休息眼睛。总之这一次的课程设计使我受益良多。对于今后学习方法方式也有启发。
