代码不正确,红球有时会重复
时间: 2023-11-15 19:05:45 浏览: 42
非常抱歉,之前的代码有问题。以下是一个更正常的程序,可以机选 5 注大乐透号码,规则是蓝色号码 35 选 5,红色号码 12 选 2:
```c++
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <vector>
using namespace std;
int main() {
srand((unsigned)time(NULL)); // 初始化随机数种子
vector<int> num(35), red(12), blue(5); // 定义号码数组
for (int i = 0; i < 35; i++) {
num[i] = i + 1; // 初始化号码数组
}
for (int k = 0; k < 5; k++) { // 机选 5 注
// 随机选取红球号码
random_shuffle(num.begin(), num.end()); // 打乱号码顺序
for (int i = 0; i < 2; i++) {
red[i] = num[i]; // 选取号码
}
sort(red.begin(), red.end()); // 对红球号码排序
// 随机选取蓝球号码
random_shuffle(num.begin(), num.end()); // 打乱号码顺序
for (int i = 0; i < 5; i++) {
blue[i] = num[i]; // 选取号码
}
sort(blue.begin(), blue.end()); // 对蓝球号码排序
// 输出结果
cout << "第 " << k + 1 << " 注:" << endl;
cout << "红球号码:";
for (int i = 0; i < 2; i++) {
cout << red[i] << " ";
}
cout << endl << "蓝球号码:";
for (int i = 0; i < 5; i++) {
cout << blue[i] << " ";
}
cout << endl << endl;
}
return 0;
}
```
这个程序使用了 STL 中的 vector 容器,可以避免数组越界的问题。程序首先使用 `random_shuffle()` 函数打乱号码顺序,然后选取前 2 个为红球号码,选取前 5 个为蓝球号码,最后对号码进行排序。这样可以保证每注号码都是唯一的,并且红球号码和蓝球号码都是按照从小到大的顺序排列的。
运行程序后,屏幕上会输出 5 注机选的号码。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)