DataColumn dc2 = new DataColumn(time_1.Text, Type.GetType("System.String"));
dt1.Columns.Add(dc1);
dt1.Columns.Add(dc2);
for (int ij = 0; ij < (int)nummen; ij++)
{
//ij = Num(arrNum, ij);
if (ij < (int)nummen)
{
DataRow dr = dt1.NewRow();
dr["姓 名"] = reutrnDs().Tables[0].Rows[ax[ij]][1];
dr[time_1.Text] = reutrnDs().Tables[0].Rows[ax[ij]][int.Parse(time_1.Text)+2];
dt1.Rows.Add(dr);
}
}
Dgv.DataSource = dt1;
}
3.2.2.1 随机抽点子模块
在随机抽点子模块要做到的功能是从原始点名名单里随机的抽出一部分人来生成一个随机点名名单,然后对其进行点名。
随机抽点子模块主要利用一个随机函数来对DataSet数据集里面的学生所在行进行随机抽点。在DataSet数据集里面的数据是以二维表方式存放的,在这个二维表里面每一行代表一个学生及其出勤记录。而行号就是确定学生姓名的关键字了。我的做法是首先得到总行数row,确定抽点人数比例用这个比例去乘以row得出抽点人数nummen,然后再从0-row中随即抽取nummen个不相同的数字存放在数组arrNum中。这样就确定了抽点名单了,再将名单显是在dataGridView3里。点名时就只对arrNum数组里相对应行号的学生点名。
具体流程示意图:
主要相应函数:
//产生随机数并装入数组arrNum
int[] arrNum;
public int[] getRandomNum(in