c++已知有三位候选人参加竞选,先输入参与投票的人数和投票内容,统计二位候选人的得票数,然后根据每个人总票数的高低决定获胜者。
时间: 2024-10-18 12:11:21 浏览: 28
在C++中,你可以使用数组或vector来存储候选人和他们的得票数,然后通过循环读取用户输入的投票信息,更新每个候选人的得票。以下是一个简单的步骤描述:
1. 定义一个结构体Candidate,包含名字和初始得票数。
```cpp
struct Candidate {
string name;
int votes;
};
```
2. 创建一个Candidate类型的vector来存储候选人。
```cpp
vector<Candidate> candidates = {{"A", 0}, {"B", 0}, {"C", 0}};
```
3. 输入投票人数和投票内容,遍历数组对每个候选人的得票进行累加。
```cpp
int totalVotes;
cin >> totalVotes;
for (int i = 0; i < totalVotes; i++) {
string vote;
cin >> vote;
for (auto& candidate : candidates) {
if (vote == candidate.name) {
candidate.votes++;
break;
}
}
}
```
4. 比较并找出得票最多的候选人。
```cpp
string winner;
int maxVotes = -1;
for (const auto& candidate : candidates) {
if (candidate.votes > maxVotes) {
maxVotes = candidate.votes;
winner = candidate.name;
}
}
cout << "获胜者是: " << winner << endl;
```
5. 结果输出。
阅读全文