C++抽奖程序教程(附源码)

大家好,欢迎阅读本文。今天,我就带大家一起来研究一下C++如何制作抽奖程序。

完整的源代码在文章最后,请耐心读完。

首先,我们先来了解一下C++如何抽取随机数。

因为C++中没有自带的random函数,所以要实现随机数的生成就需要使用rand()和srand()。


1.rand()

rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。

#include <iostream>

#include <cstdlib>

using namespace std;

int main(){

    for (int i = 0; i < 10; i++) {

        cout << rand()%100<< " ";

    }

    return 0;

}

/*结果:

86 77 15 93 35 86 92 49 21

在100中产生随机数, 但是因为没有随机种子所以,下一次运行也是这个数,因此就要引出srand

*/


srand()

srand()可用来设置rand()产生随机数时的随机数种子。通过设置不同的种子,我们可以获取不同的随机数序列。

可以利用srand((int)(time(NULL))的方法,利用系统时钟,产生不同的随机数种子。不过要调用time(),需要加入头文件< ctime >。

#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

int main(){

    srand((int)time(0)); // 产生随机种子 把0换成NULL也行

    for (int i = 0; i < 10; i++) {

        cout << rand()%100<< " ";

    }

    return 0;

这样,多次产生的随机数就不一样了。


下面附带源码,功能还不算太完善,先凑合着用吧。后期有时间我再进行更改。

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

#include <windows.h>

#include<string.h>

#include <iostream>

#include<conio.h>

#define random(x) (rand()%x)

using namespace std;

void display(int x);

int main() {

    srand((int)time(0));

    int Num = 0;

    cout << endl << endl << " 按键开始" << endl << " Press any key to Start";

    _getch();

    system("cls");

    char c;

    while(1){

        Num = random(400);

        display(Num);

        Sleep(50);

        if (GetAsyncKeyState('P')) { system("pause"); }

        system("cls");

    }

    return 0;}

void display(int x) {

     cout << endl << endl << " 按p键暂停" << endl << " Press ‘p’ key to Suspend";

    cout << endl << endl;

    cout << " luck Number:" << x <<endl<<endl<<endl;

}

好了,以上就是C++抽奖程序的源代码。感谢阅读!

另外,PET考试的6套真题可以免费领取,还有学而思网校的视频课程,全部享受空前优惠。

官网400元的课程现在仅需44元!

有需要的请联系QQ:3161233281(猛虎tr4)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容