随机数的生成代码

View Code
#include <iostream> 
#include <stdlib.h> 
#include <time.h> 
using namespace std; 
int main() 
{       int a=2,b=9;
        srand((unsigned)time(NULL)); 
        for(int i=0; i<10;i++ ) 
                cout<<rand()%(b-a)+a<<endl; 
        cout << endl; 
        return 0; 
}

<一>生成[a,b)的随机整数,使用rand()%(b-a)+a;

<二>生成[a,b]的随机整数,使用rand()%(b-a+1)+a;

<三>生成(a,b]的随机整数,使用rand()%(b-a)+a+1;

通用公式:a+rand()%n;其中的a是起初值,n是整数的范围

要取得a到b之间的随机整数,另一种表示:a+(int)b*rand()/(RAND_MAX+1)

要取得0~1之间的浮点数,可以使用rand()/double(RANG_MAX)

原文地址:https://www.cnblogs.com/aijianiula/p/2471928.html