2012-01-30 86 views
0

我有點卡住了我有一個項目。我應該使用char *來獲取單詞列表,讓用戶輸入他們想要的單詞數,隨機化這些單詞數然後輸出到文本文件。隨機化並輸出項目列表到文本文件

基本上我希望它這樣做:

  1. 字的閱讀列表
  2. 多少個字你要不要? (例如:50)
  3. 採取(50)字隨機從該列表
  4. 輸出到文本文件

我的列表是這樣的:

char * words [] = 
{ 
    "Pistachio", 
    "Avocado", 
    "Salami", 
    "Bologna", 
}; 

而且這樣的例子不勝枚舉。 ...

我用這個來確定元素的數組中的號碼:

int array_size = sizeof (words)/sizeof (words [0]); 

,並把它應用到這一點:

cout << words[rand()%26] << endl; 

我已經有它設置,使用戶可以告訴他們有多少話要的程序,但我不能讓它來選擇號碼,並將其應用到名單。到目前爲止,我所嘗試過的所有內容都只能以一個隨機字輸出到文本中。我使用隨機函數真的很糟糕,我認爲我沒有正確使用它!任何幫助將不勝感激。

+0

你能告訴你如何試圖使用隨機函數嗎? – 2012-01-30 02:56:25

+0

int i = rand()%26; - 是該項目所說的使用,但我看不出如何將其應用於該計劃。雖然我沒有嘗試'srand'。我仍在挖掘,嘗試更多的東西。 – Hydlide 2012-01-30 03:03:15

+0

粘貼你的代碼! – fileoffset 2012-01-30 05:51:53

回答

0

您可以使用srand和rand函數來生成編號。按照srand(time(NULL))設置種子; 2.獲得隨機數= rand%50 + 1(最大計數)。

+0

試一試。 :) – Hydlide 2012-01-30 03:18:39

+0

但事情是,我使用字符而不是字符串,這可能是我遇到麻煩最多的地方。 – Hydlide 2012-01-30 03:36:17

+0

@Hydlide:爲什麼**會**使用'char'而不是'std :: string'?你有太多時間需要浪費嗎? – 2012-01-30 03:42:36