如:我现在有一个高等代数的题库(tk),它里面有第一章,第二章,第三章(zj)..... 各个章有各自的题型(tx):填空题,选择题,计算题,应用题,证明题.他们有各自的分值和难度(nd:分 容易,一般,困难).我现在要根基要求:难度和各个章节的题目量的比例生成一个一百分的含有各种题型的试卷.
题库是在SQL SERVER数据库中.

解决方案 »

  1.   

    可以一步一步来吗!我去年就作过。
    比如先让用户输入体型、数量、难度系数等必要数据。
    然后把满足条件的记录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;  {之后再换下一个章节或难度或题型}