好吧,我幾乎得到了這個工作,但我堅持b。的第二部分,讓它顯示在該陣列中的位置的單詞。這是我需要做的事情的清單。打印內容的字符串向量
讀取從文本文件50個字轉換爲一個字符串數組
程序將使用隨機數爲:
A.-它將產生用於2和7之間的隨機數在句子中選擇要使用的單詞
b.-它將生成一個隨機數字,用於選擇單詞。該數字將介於0和49之間,因爲這些是數組中字的位置
它將在屏幕上顯示該句子。
謝謝你的時間提前的任何建議
#include <string>
#include <iostream>
#include <fstream>
#include <time.h>
#include <stdlib.h>
#include <vector>
using namespace std;
int main() {
ofstream outFile;
ifstream inFile;
string word;
vector <string> words;
srand(time(0));
int Random2 = rand() % 7 + 1;
inFile.open("words.txt");
if (!inFile.is_open()) { //tests to see if file opened corrected
exit(EXIT_FAILURE);
}
while (getline(inFile, word)) { //Puts file info into string
words.push_back(word);
}
for (int i = 0; i < Random2; i++) {
int Random1 = rand() % 49 + 1;
cout << words[Random1] << endl;
}
cin.get();
}
我不太明白。第一個隨機數是句子中單詞的數量? –
歡迎來到堆棧溢出。 1)孤立地開發新功能*。 2)良好的縮進就像好的修飾。 3)數組和矢量不是一回事。 4)「陣列中那個位置的單詞」沒有多大意義。 5)在使用它之前,確保你瞭解'getline'。 6)你從[1,...,50]中抽取一個隨機數。 – Beta
你的實際問題是什麼?除了你以外,你看起來沒問題的代碼是從1到49而不是0到49的隨機單詞。 –