ASP.NET 实现对数据库的随机选择,该怎么解决
1个回答
展开全部
这个是你要写好随机抽题目的函数,定义好题目的格式
好比你的试卷中又单选题,是非题,多选题,
每种题目你要出多少,就各自从数据库random多少出来,在用for循环写在div里面就可以了
给你一个我写的,随机抽取不重复的数字的数组的方法 从min 和max 中 抽取一个不重复的数组
当然 你不要超出范围。这个范围就是你数据库里面题目的id,或者是读出来Datarow的范围
public static int[] GetRandomArray(int Number, int minNum, int maxNum) // 产生随机数
{
int j;
int[] b = new int[Number];
Random r = new Random();
for (j = 0; j < Number; j++)
{
int i = r.Next(minNum, maxNum);
int num = 0;
for (int k = 0; k < j; k++)
{
if (b[k] == i)
{
num = num + 1;
}
}
if (num == 0)
{
b[j] = i;
}
else
{
j = j - 1;
}
}
return b;
}
好比你的试卷中又单选题,是非题,多选题,
每种题目你要出多少,就各自从数据库random多少出来,在用for循环写在div里面就可以了
给你一个我写的,随机抽取不重复的数字的数组的方法 从min 和max 中 抽取一个不重复的数组
当然 你不要超出范围。这个范围就是你数据库里面题目的id,或者是读出来Datarow的范围
public static int[] GetRandomArray(int Number, int minNum, int maxNum) // 产生随机数
{
int j;
int[] b = new int[Number];
Random r = new Random();
for (j = 0; j < Number; j++)
{
int i = r.Next(minNum, maxNum);
int num = 0;
for (int k = 0; k < j; k++)
{
if (b[k] == i)
{
num = num + 1;
}
}
if (num == 0)
{
b[j] = i;
}
else
{
j = j - 1;
}
}
return b;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询