国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++實現(xiàn)抽獎程序的方法

2020-02-24 14:24:11
字體:
供稿:網(wǎng)友

大家在學(xué)習(xí)編程的時候是不是對于抽獎程序都會非常的好奇呢?那么我們要如何才能實現(xiàn)抽獎程序呢?現(xiàn)在我們就和武林小編一起去看看C++實現(xiàn)抽獎程序的方法,感興趣的朋友們可以一起來看看。

一、int rand()可以生成從[0, 65536)之間均勻分布的隨機(jī)數(shù)。

現(xiàn)要求實現(xiàn):有30萬員工,使用rand()寫一個抽獎程序,抽出人100獲獎。

#include <iostream> #include <set> using namespace std; typedef set<int> ISET; ISET GetPridePersonId(const int num, const int pride_num) {     int id;   ISET iset;     while (1) {      id = (int)((double)rand() / RAND_MAX * num) % (num - 1);      if (iset.find(id) == iset.end()) {        iset.insert(id);      }      if (iset.size() >= pride_num) {        break;      }         }       return iset; } void print(ISET &iset) {   ISET::iterator iter;   cout<<"item as :/n";   for (iter = iset.begin(); iter != iset.end(); ++ iter) {     cout<<*iter<<"/n";   } } int main(int argc, char **argv)  {   const int total_person = 300000;   const int total_pride_person = 100;   ISET iset = GetPridePersonId(total_person, total_pride_person);   print(iset);   return 0; } 

二、主要容易出錯的地方:

①當(dāng)rand()范圍要求擴(kuò)大的時候,浮點與整形數(shù)之間的強(qiáng)制轉(zhuǎn)換問題。

?

?
int? randId = (int)((double)rand() / RAND_MAX * num);

?

②STL中set的使用是否非常熟練?

以上就是小編為大家介紹C++實現(xiàn)抽獎程序的方法,遇到類似問題的朋友不妨借鑒學(xué)習(xí)下,如果還有疑問,請在本文底部留言吧。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 高邑县| 博客| 台中市| 南汇区| 秦安县| 调兵山市| 夹江县| 长顺县| 自贡市| 鹿泉市| 宜君县| 蒙山县| 金华市| 本溪| 合川市| 阿拉善左旗| 临武县| 维西| 五台县| 鹿邑县| 乌鲁木齐县| 温州市| 安图县| 高青县| 西青区| 连山| 永宁县| 彩票| 泽州县| 阿坝| 普定县| 海晏县| 永登县| 民勤县| 昌邑市| 桂东县| 万宁市| 钦州市| 伊川县| 青川县| 古蔺县|