永发信息网

求教 班级排座位的程序

答案:1  悬赏:40  手机版
解决时间 2021-03-25 10:15
求教 班级排座位的程序
最佳答案
算法的实现思路:
1,把N个文本框,组织成控件数组:Text1(0)、Text1(1)、Text1(2)、...Text1(N-1)。
2,建立一个由N个元素的正整数数组d(N)。
3,用产生随机数的方法,生成一N个范围在【1,N】的互相不重复的自然数序列,一一存放到数组d里。
4,最后通过1-N的循环,按照次序把d(N)里的数值作为列表框里的项的编号,取出姓名,赋值给文本框。
即:Text1(i).Text = List1.List(d(i))

一,使用文本框组
在窗体上先添加一个文本框控件Text1,然后用鼠标选中该文本框,右键单击,选[复制];然后选窗体任何位置,右键单击,选[粘贴],回答“Yes”,这样复制得到的就是控件数组了,这样不然粘贴,到符合你的个数要求位置。

二,关键代码实现:
1,生成N个范围在[1,N]内且互不相同的自然数序列:
Dim d() As Integer
Dim i As Integer
Dim n As Integer
Dim x As Integer

n = 40 '假设一个班级40个学生
ReDim d(n) As Integer
Randomize
n = 0
Do While n < 40
x = Int(Rnd * 40 + 1)
For i = 1 To n
If x = d(i) Then Exit For
Next i
If i > n Then
n = n + 1
d(n) = x
End If
Loop
'下面的代码以一行输出5个数字,可以检验一下是否符合要求
For i = 1 To 40
Print d(i),
if i mod 5 then print
Next i

2,下面实现把列表框里的40个学生的名单,一一填写到文本框里;
注意:列表框里的每行叫做一个项,而编号从0开始,即:
第一行,叫做第一项,编号却是 0,也叫做第0项
第二行,叫做第二项,编号却是 1,也叫做第1项,......等等
同时注意到,文本框控件组的下标,默然也是从0开始编号的!!!

而生成的自然数序列是1-40,所以需要减1处理。
for i=1 to 40
Text1(i-1).Text = List1.List(d(i)-1)
next i
至此,结束了。追问不对啊!

哪里有问题吗?

追答有什么问题呢?
其实我给出的代码,只要修改那个40就可以了?
你现在上面是26,下面出现25了??????追问现在好了!!!!如果是要名单的前5个人随机排到第二三排,其他人随机怎么写呢
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
李老太大肠汤做法
哥釉七星盘
枭,官,杀,才,财,伤,食 什么意思
从东莞南城车站坐cc8到黄埔客运总站,我要去
杳包月兵养老保险交了几年了
海栀子的形态
根据水浒传第六回出题目回答
有多少个人喜欢过杨幂。
紧闭的近义词是什么???????????
五(2)班同学到工地去搬砖,共搬砖1100块。
综合成新率应怎样计算?
妹子每天和你聊天就是喜欢你吗
轩辕剑3外传天之痕2.03与公山梦字谜的谜底
总是睡觉是什么情况?
电脑上D V D 怎么卸载啊
推荐资讯
为什么那么多说女兵通过特别难的
(cosa-cos3a)/(sin3a-sina)结果为 A。tan
夫荣之命是什么意思
听说兵锁清积也效果不错,怎么联糸河北负责人
鑫磊汽车园(伍家乡伍家岗街道东站路)地址在什
东北大板(一种雪糕)为什么这么火
老公出轨回归后还爱小三老婆该怎么办
街子中心小学地址在什么地方,我要处理点事!
香港瀚鸿国际拍卖集团广州公司的地址
把茄子放进逼里一晚上 涨涨的
神钢sk75挖掘机工作400小时出现发动机一缸气
欧威wp3q124e401发动机和康明斯发动机那个省
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?