用C++编写一个抽奖系统
时间: 2023-11-12 14:07:52 浏览: 216
抽奖系统可以有多种实现方式,以下是一种简单的实现方式,使用随机数生成器和数组来实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int lottery[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 抽奖池
int i, j;
int winner[3]; // 存储中奖号码
srand((unsigned)time(NULL)); // 初始化随机数生成器
printf("欢迎参加抽奖活动!\n");
// 从抽奖池中随机选取三个不同的号码
for (i = 0; i < 3; i++) {
int flag = 1; // 标记是否已经选过该号码
do {
winner[i] = lottery[rand() % 10];
for (j = 0; j < i; j++) {
if (winner[i] == winner[j]) {
flag = 0;
break;
}
else {
flag = 1;
}
}
} while (flag == 0);
}
printf("恭喜以下三位幸运儿获得大奖:\n");
for (i = 0; i < 3; i++) {
printf("%d ", winner[i]);
}
printf("\n");
return 0;
}
```
运行结果示例:
```
欢迎参加抽奖活动!
恭喜以下三位幸运儿获得大奖:
2 9 5
```
该抽奖系统使用了一个长度为10的数组作为抽奖池,并使用了rand()函数生成随机数来选取中奖号码。为了避免选到重复的号码,使用了一个标记变量flag来判断是否已经选过该号码,如果已经选过则重新选择,直到选到不同的号码为止。最终输出选出的三个中奖号码。
相关推荐
![](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)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)