版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_41264055/article/details/82633073
package wsq;
import java.util.Scanner;
public class CustomCaipiao {
public static void main(String[] args) {
/*
* 用户自选彩票数字: 1.使用scanner来输入彩票号码! 2.直接写成自选多注,注数由用户输入决定;
* 3.红球值1-33,不重复;蓝球值1-16;
*/
// 定义二维数组 存储所有的彩票
int[][] bigArray = new int[5][7];
Scanner scanner = new Scanner(System.in);
System.out.println("请输入自选的注数(最多5注):");
int count = scanner.nextInt();
// for循环count次
for (int i = 0; i < count; i++) {
// 定义一维数组 存储单注彩票
int[] num = new int[7];
int index = i + 1;
System.out.println("请输入第" + index + "注:");
// 先设置前6位的红球 红球下标是 0---5
System.out.println("请先输入红球,取值范围1--33");
for (int j = 0; j < 6; j++) {
int temp = scanner.nextInt();
// 先判断输入的数字是否在 1--33之间
if (temp < 1 || temp > 33) {
System.out.println("请输入1--33之间的数字!");
// 此次循环无效
j--;
continue;// 结束本层循环
}
boolean isExit = false;
// 数字范围合格 再查看数字是否重复
for (int k = 0; k < 6; k++) {
if (temp == num[k]) {
// 说明随机的值 跟数组中某一个值一致
isExit = true;
// 一旦数字存在 就不需要再往下遍历了
break;// 结束循环
}
}
// 数组遍历结束 查看isExit的值是否为true
if (isExit) {
// 为true 说明随机数冲突 此次循环是无效的
System.out.println("此数字已经存在,请重新输入!");
j--;
} else {
// 为false 说明随机数没有出现过
num[j] = temp;
}
}
System.out.println("请输入蓝球,取值范围1--16");
// 红球结束 查看蓝球
boolean isNo = true;
while (isNo) {
int blue = scanner.nextInt();
if (blue < 1 || blue > 16) {
System.out.println("蓝球的取值范围是1-16!");
} else {
// 范围匹配 赋值并且结束while
num[6] = blue;
break;
}
}
// ------------------------------------------------
for (int m = 0; m < 5; m++) {
if (bigArray[m][0] == 0) {
for (int j = 0; j < 7; j++) {
bigArray[m][j] = num[j];
}
// 数据放置结束
break;
}
}
}
// --------------------------------
// 遍历二维数组 查看值是否设置成功
System.out.println("最后输出结果为:");
for (int i = 0; i < count; i++) {
for (int j = 0; j < 7; j++) {
System.out.print(bigArray[i][j] + " ");
}
System.out.println();
}
}
}