抽奖代码c加加
时间: 2023-07-28 19:16:45 浏览: 106
以下是一个简单的抽奖程序的 C++ 代码:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
// 设置随机种子
srand(time(NULL));
// 定义参与抽奖的人数和获奖名额
int numParticipants, numWinners;
// 获取参与抽奖的人数和获奖名额
cout << "请输入参与抽奖的人数:";
cin >> numParticipants;
cout << "请输入获奖名额:";
cin >> numWinners;
// 验证输入的数据是否合法
if (numParticipants < numWinners) {
cout << "获奖名额不能大于参与抽奖的人数!" << endl;
return -1;
}
// 生成随机数,模拟抽奖过程
int* winners = new int[numWinners];
for (int i = 0; i < numWinners; i++) {
int index = rand() % numParticipants;
bool isDuplicate = false;
for (int j = 0; j < i; j++) {
if (winners[j] == index) {
isDuplicate = true;
break;
}
}
if (isDuplicate) {
i--;
} else {
winners[i] = index;
}
}
// 输出获奖者的编号
cout << "恭喜以下获奖者:" << endl;
for (int i = 0; i < numWinners; i++) {
cout << winners[i] << endl;
}
// 释放内存
delete[] winners;
return 0;
}
```
该程序首先获取参与抽奖的人数和获奖名额,然后生成随机数来模拟抽奖过程,最后输出获奖者的编号。在生成随机数的过程中,使用了一个循环来避免出现重复的获奖者。
阅读全文