各位大侠:
问题是这样的,数据库中有N个人(每个人有唯一ID)的记录。
我想为这N个人每人随机分配一个小等于N的整数,要求不重复。不遗漏。
就像有编号从1-N的N个座位为N个学生分派一样。
问题是这样的,数据库中有N个人(每个人有唯一ID)的记录。
我想为这N个人每人随机分配一个小等于N的整数,要求不重复。不遗漏。
就像有编号从1-N的N个座位为N个学生分派一样。
解决方案 »
- datepicker日期控件为什么不能用?
- jsp include文件乱码问题 请教
- jsp对象的几个问题
- sakai 项目build kernel nakamura 时候报错
- JSP在获取中文参数时,如果字符串长度为奇数,在IE6.0里后台会报错,在IE7.0时可以正常显示
- prepareStatement 中的sql语句 为什么不能用like %?% 模糊查询呢?
- 一个关于获得分页的存储过程的纪录集
- double类型的数据超过一定范围后在页面上显示为指数形式,请问如何解决?
- 本人初学,现正利用<J2EE 全实例教程>在学习,但遇到点问题,请各位高手指点一下!!!
- ApplicationContext applicationContext = new ClassPathXmlApplicationContext(new S
- 如何查询数据库中指定行号的记录
- 谁有用过那个叼:jqGrid 的table页啊,支援一把
因为N个人最少需要N个数来标号
原问题是:
各位大侠:
问题是这样的,数据库中有N个人(每个人有唯一ID)的记录。
我想为这N个人每人随机分配一个小等于N的整数,要求不重复。不遗漏。
就像有编号从1-N的N个座位为N个学生分派一样。
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] p = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int[] s = new int[10];
int i = 0;
Random rand = new Random();
while (i < 10)
{
int x = rand.Next(10);
if (s[x] == 0)
{
s[x] = x;
i++;
Console.WriteLine(p[x]);
}
}
}
}
}
{
int x = rand.Next(10);
if (s[x] == 0)
{
s[x] = 1;
i++;
Console.WriteLine(p[x]);
}
}
首先你的表结构需要有个suijiHao字段,这样的:
id name suijiHaosuijiHao字段用来存储这个人的随机号。然后页面上需要有学生编号或是学生姓名的选择列表类的
好了,我们说说代码
1、选择页面上学生姓名(举个离子)点击按钮,后台生成随机号
2、然后循环suijiHao字段,目的为了看该随机号是否可用,是否与数据库中重复
3、重复的话,重新生成随机号
4、不重复的话,更新该学生对应的suijiHao字段为最后生成的可用的随机号ok了
提示:分有点少哦~