一、引言
在编程学习和实践过程中,模拟各类有趣的场景是提升编程能力的有效途径。今天,我将和大家分享一个用 C++ 实现的抽奖模拟程序。这个程序不仅能帮助大家理解随机数的应用、结构体的使用,还涉及到概率计算和用户交互等知识点。
二、代码实现
收起
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
#include <string>
// 结构
struct LootItem {
std::string name;
int weight;
};
// 计算总权重的函数
int calculateTotalWeight(const std::vector<LootItem>& items) {
int totalWeight = 0;
for (size_t i = 0; i < items.size(); ++i) {
totalWeight += items[i].weight;
}
return totalWeight;
}
// 打印奖品信息的函数
void printLootTable(const std::vector<LootItem>& items) {
int totalWeight = calculateTotalWeight(items);
std::cout << "当前奖池:\n";
for (siz