JAVA题 求 答案

程序功能:随机生成0到10以内(包含10)的整数10个,定义一个整型数组来存储这些数字,要求随机生成的10个数字中,等于7,8,9,10的数字不超过3个。并隔行打印随机生成的10个数字,等于7,8,9,10的数字后面跟上“:”号加以区分。
如图1所示:
提示:
(1)“不超过3个”,即可以没有,也可以有1个,或者2个,或者3个,但不能超过3个。
(2)使用Random类生成10以内的随机数。
程序结构如下:
import java.util.*;
public class Exam1
{
public static void main(String[] args)
{
//生成10个随机数,并打印
}

谢谢了~

第1个回答  2011-06-11
import java.util.Random;

public class RandomPrint {
private static Random random =new Random();
private static int num=0;
private static int temp=0;
/**
* @param args
*/
public static void main(String[] args) {
int arr[] =new int[10];

for(int i=0;i<10;i++){
arr[i]=generateNum();
}
System.out.println(num+"个大于等于7 的数");
for(int i=0;i<10;i++){
if(arr[i]>=7){
System.out.println(arr[i]+":");
}else{
System.out.println(arr[i]);
}
}
}

private static int getRandom(){
return random.nextInt(10);
}

private static int generateNum(){
temp=getRandom();
if(temp>=7)
num++;
if(num>4 &&temp>=7){
generateNum();
}
return temp;
}
}
第2个回答  2011-06-11
import java.util.Random ;
public class RandomTest{
public static void main(String[] args){
Random r = new Random() ;
int[] a = new int[10] ;
int temp = 0 ;
for(int i = 0 ; i < 10 ; i++){
if(temp<3){
a[i] = r.nextInt(11) ;
if(a[i]>=7){
temp ++ ;
}
}else{
a[i] = r.nextInt(7) ;
}
}
for(int j = 0 ; j < a.length ; j++){
if(a[j]>=7){
System.out.println(a[j] + ";") ;
}else{
System.out.println(a[j]) ;
}
}

}
}本回答被提问者采纳
相似回答