在[a,b]中生成n個不重複的隨機數
可以使用srand()來設置rand()產生隨機數時的隨機數種子,設置不同的種子可以獲取不同的隨機數序列。
可以利用srand((int)(time(NULL))的方法,利用系統時鐘,產生不同的隨機數種子。需要調用time(),所以要加入頭文件< ctime >。(這裏用了萬能頭文件)
#include<bits/stdc++.h>
using namespace std;
int main()
{
srand((int)time(0));
int arr[100]= {0};
int i=0,t=0,n=0,a=0,b=0;
cin>>n>>a>>b;
while(t<n)
{
i=rand()%(b-a+1) +a;
if(arr[i]==0)
{
arr[i]=1;
cout<<i<<" ";
t++;
}
}
}