我正在構建一個程序,其中用戶鍵入一個數字(n)並創建一組隨機數。例如,如果用戶輸入8,則應該創建八個隨機數,它們的範圍應該在0-999,999之間。該程序似乎正在編譯,唯一的問題是,只有一個隨機數正在生成。在C++中使用矢量創建隨機數
#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;
main()
{
int n;
int r;
int i;
int j;
vector<int> v;
cout << "Enter size of vector: ";
cin >> n;
for (i = 0; i < n; i++)
{
v.push_back(n);
r = rand() % 1000000;
v[i] = r;
}
cout << r << endl;
誰能告訴我什麼,我做錯了,並會產生什麼,我需要一個以上的隨機數呢?
你怎麼知道只有一個數字正在生成?最後您的cout聲明只會打印一個號碼。 – GWW 2011-01-29 01:13:54
不要忘記調用`srand(time(0))` – 2011-01-29 01:32:47