小弟初学JAVA写的第一个象样的程序,希望哪位大哥能帮一把!
以下是小弟初学JAVA写的第一个象样的程序(随机生成5000个1~48的整数,并统计每个数出现多少次)
可是下面的程序运行的结果却都是 0 :122次
这样循环49行,但每行都一样啊。。。
我查了好几遍,可还是没有查到原因,希望哪位大哥能帮小弟一把。。。
package 产生随机数统计并输出;
import java.util.*;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int i,j,no[],no_sum[];
/*
no[]数组存放数字,如,no[1]放数字1;
no_sum[]数组存放该数的出现次数,如,no_sum[1]=5表示数字1出现的次数是5次
*/
no=new int[50];
no_sum=new int[5000];
Random rndTemp = new Random(); //声明一个随机数的类rndTemp
for(i=0;i<=48;i++);{
no[i]=i;
no_sum[i]=0;
}
for(i=1;i<=5000;i++){
int intRnd = (Math.abs(rndTemp.nextInt()))%49;
/*
用nextInt()产生不同的随机数,先对随机数取绝对值,再求49的余数,这样intRnd就是0~48的数了
*另外,intRnd本身就存在了,不需要在前面声明(编写时走了弯路)
*/
for(j=0;j<=48;j++){
if(intRnd==no[j]) {
no_sum[j]++;
} //对随机数进行统计
}
}
for(i=0;i<=48;i++) System.out.println (no[i]+" : "+no_sum[i]+"次");
}
}