用java数组实现了一个抽奖程序

import java.util.Arrays;
import java.util.Scanner;

/**
 * This program demonstrates array manipulation
 * @author hewenwu
 *
 */
public class LotteryDrawing {

	public static void main(String[] args) {
	
		
		//创建scanner对象来获取用户输入
		Scanner in = new Scanner(System.in);
		
		System.out.println("请输入彩球总数目:");
		int n = in.nextInt();
		
		System.out.println("请输入你想抽取的彩球数目:");
		int k = in.nextInt();
		
		//初始化数组
		int[] numbers = new int[n];
        for(int i=0;i<numbers.length;i++){
        	numbers[i]=i+1;
        }
        
        //随机抽取k个数存到数组result里面
        int[] result = new int[k];
        for(int i=0;i<result.length;i++){
        
        	//随机获取一个下标
        	int r = (int) (Math.random()*n);
        	
        	//将取出的数值存入新的数组中
        	result[i]=numbers[r];
        	
        	//用numbers数组中的最有一个元素填补被去除的元素的位置
        	numbers[r]=numbers[n-1];
        	n--;
        }
        
        //对result数组进行排序
        Arrays.sort(result);
        
        //打印结果
        for(int result1 : result)System.out.println(result1);
        
	

}}

  

posted on 2014-03-16 10:45  不会熬夜的程序员  阅读(1273)  评论(0)    收藏  举报

导航