具体思路:
将40个学生的学号输入string数组,然后调用random函数
关键:创建boolean数组,bool[40],每当random选到一个随机数时,把对应的boolean数组设为true,用do...while循环,里面随机生成随机数,验证boolean是否为true,若无true则一直循环,直到为false跳出循环,这样就不会生成重复的随机数了
用的是eclipse软件编程java语言
package com.minirisof; import java.util.*; public class Random { public static void main(String args[]) { boolean bool[]=new boolean[40]; int i,m=0; String str[]=new String[40]; str[0]="20112911"; str[1]="20122561"; str[2]="20122755"; str[3]="20122770"; str[4]="20122772"; str[5]="20122789"; str[6]="20122795"; str[7]="20122800"; str[8]="20122801"; str[9]="20122802"; str[10]="20122803"; str[11]="20122813"; str[12]="20122818"; str[13]="20122819"; str[14]="20122820"; str[15]="20122826"; str[16]="20122829"; str[17]="20122837"; str[18]="20122839"; str[19]="20122847"; str[20]="20122850"; str[21]="20122865"; str[22]="20122878"; str[23]="20122894"; str[24]="20122898"; str[25]="20122899"; str[26]="20122900"; str[27]="20122908"; str[28]="20122909"; str[29]="20122910"; str[30]="20122923"; str[31]="20122931"; str[32]="20122933"; str[33]="20122939"; str[34]="20122941"; str[35]="20122944"; str[36]="20122947"; str[37]="20122949"; str[38]="20122955"; str[39]="20122961"; for(i=0;i<3;i++) { do { m=(int)(40*Math.random()); }while(bool[m]); bool[m]=true; System.out.println(str[m]); } } }