如:我现在有一个高等代数的题库(tk),它里面有第一章,第二章,第三章(zj)..... 各个章有各自的题型(tx):填空题,选择题,计算题,应用题,证明题.他们有各自的分值和难度(nd:分 容易,一般,困难).我现在要根基要求:难度和各个章节的题目量的比例生成一个一百分的含有各种题型的试卷.
题库是在SQL SERVER数据库中.
解决方案 »
- treeview onchange事件里如何得到change前的节点信息
- IWTreeView如何加载数据库?
- 下面这段代码在delphi 2009 和delphi 2006运行结果不一样?
- 新手求学,delphi编程时会不会常用到 自己声明一个过程或函数 然后再调用?
- To 关于Paradox数据表,进行查询时的问题
- 有谁用过NETBIOS通信协议接受数据包?敬请帮助。
- 使用三方组件时遇到一个问题,高手请指教!谢谢!
- delphi的高手进来,怎样才能使程序在不被激活的情况下,也是在最前面显示
- 很急的问题请大家帮帮忙!
- 大分请问Delphi用什么工具控制源代码的版本比较好?
- 说说调试多线程程序的方法
- 为什么会找不到字段?打星号的那行。
比如先让用户输入体型、数量、难度系数等必要数据。
然后把满足条件的记录SELECT出来,用随机函数选择固定数量的题目即可。
你可以先做填空题再选择题例:select * from XXX where tx=xx and zj=xx and nd=xx
这样选出来后的记录用随机函数再选。为了保证不会出现重复的数据,可建立一个数组用于保存已选中的数据 var selected:array [1..100] of integer;
x,no:integer;
begin
....
x:=0
while x<xx do (xx是所要的题目数量)
begin
no:=random(maxcount) {maxcount是库中的总记录数,no其实是库中记录的顺序好,不是记录号!}
{写个过程检查NO是否已被选种}
if 判断是否已选中 then
begin
x:=x+1;
selected[x]:=no;
end;
end;
{这样所有要选择的记录的一些信息已存在数组中,并且没有重复}
{接下来,把他们一条一条搬到你的文件中即可。}
end; {之后再换下一个章节或难度或题型}