C++實現在一段取值範圍內輸出不相同的隨機數
阿新 • • 發佈:2019-02-12
輸入最小值Min和最大值Max,實現在Min和Max之間輸出10個不相同的隨機數。
程式碼如下:
#include<iostream> #include<cstdlib> #include<ctime> using namespace std; const int N = 10; int* RandNum(int Min, int Max); int main() { int max, min; cout << "Min:"; cin >> min; cout << "Max:"; cin >> max; cout << "Result is:"; int *a = RandNum(min, max); for (int n = 0; n < N; n++) cout << a[n] << " "; cin.get(); cin.get(); return 0; } int* RandNum(int Min, int Max) { int *t=new int[N]; srand((unsigned)time(0)); int i, j; for (i = 0; i < N; i++) { t[i] = Min + rand() % (Max-Min); for (j = 0; j < i; j++) { if (t[i] == t[j]) { i--; break; } } } return t; }
程式執行結果: