用java.算出小于100的10个不重复的随机数,放入数组,并且打印出来

 我来答
25754257X
2011-01-09 · TA获得超过294个赞
知道答主
回答量:66
采纳率:0%
帮助的人:41.3万
展开全部
public class TextRandomArray {
/**
* 将小于100的10个不重复的随机数,放入数组,并且打印出来
*/

public static void main (String[]args)
{
int lot[] = new int[10]; //定义数组
int num;
lot[0]= (int)(Math.random()*100); //产生0-99之间的随机数,并赋值给lot[0]
for (int i=1;i<lot.length;i++)
{
num =(int)(Math.random()*100);
lot[i]=num;

/*
* 判断是否与前面产生的数值相等,
* 如果相等则表示数字有重复,于是将下标减1,退回去重新产生随机数
*/
for (int a=0; a<i; a++)
{
if (lot[a] == lot[i] )
{
i--;
break;
}
}
}

System.out.print("此次产生的数组的值为:");
for (int b =0;b<lot.length;b++)
{
System.out.print(lot[b]+" ");
}
}
}

测试结果:

此次产生的数组的值为:86 60 47 68 94 29 8 19 22 80

这粘过来的格式真让我看着头痛!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zkgogogo
2011-01-09 · TA获得超过458个赞
知道小有建树答主
回答量:181
采纳率:0%
帮助的人:0
展开全部
import java.util.*;

public class Rand10
{
public static void main(String[] args)
{
Random rand=new Random();
int[] num=new int[10];
boolean[] used=new boolean[100];
Arrays.fill(used,false);
for(int i=0;i<10;i++)
{
int tmp;
do
{
tmp=rand.nextInt()%100;
}while(tmp<0||used[tmp]);
used[tmp]=true;
num[i]=tmp;
}
for(int e:num)
System.out.println(e);
}
}
楼主参考。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flyingFish211
2011-01-10 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
用不用写得那么麻烦阿?用Set保存不就可以了么

import java.util.Random;
import java.util.Set;
import java.util.TreeSet;

public class Test {

public static void main(String[] args) {

final int length = 10;

int[] ary = new int[length];

fillAryByRandom(ary);

//Print the array
for(int i = 0; i < length; i++){
System.out.print(ary[i] + " ");
}
}

private static void fillAryByRandom(int[] ary) {

Random rand = new Random();

Set<Integer> set = new TreeSet<Integer>();

while(set.size() != ary.length){
set.add(rand.nextInt(100));
}

int i = 0;
for(Integer digit: set){
ary[i++] = digit;
}
}
}

------------------
0 2 8 9 21 50 69 73 78 93

---------------
4 15 22 28 30 41 62 73 84 90
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cq_08
2011-01-09 · 超过11用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:24.7万
展开全部
每生成一个数存入数组,并且判断它与之前的i个数比较是否重复,重复就继续生成随机数,知道10个,结束!并且用一个计数器记录不重复的数,以便进行判断。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
644792799
2011-01-09 · TA获得超过662个赞
知道小有建树答主
回答量:696
采纳率:100%
帮助的人:528万
展开全部
package baidu.question.ask;

import java.util.ArrayList;
import java.util.List;

public class Random {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Double> NoDupArray = new ArrayList<Double>();
double number ;
while(NoDupArray.size()<10){
number = Math.random()*100+1;
if(!NoDupArray.contains(number)){
NoDupArray.add(number);
}
}
for(double dou : NoDupArray){
System.out.print(dou+"\t");
}
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式