我創建了一個使用5X5陣列和矢量的混洗程序。向量應該存儲1到25的值,數組對每個元素應該只有0。一旦shuffle()函數被傳遞,它應該隨機地將矢量的1到25的值放在數組中。混洗功能無法正常工作
void Match::shuffle() {
std::vector<int> vec(25);
int randNum = rand() % (vec.size());
for (int i = 1; i < 26; i ++) {
vec.push_back(i);
}
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
backArr[i][j] = vec.at(randNum);
vec.erase(vec.begin() + randNum);
randNum = rand()%vec.size();
}
}
}
當問題陳述簡單地說「它不起作用」時,很難提供解決方案。請[編輯]您的問題,以更全面地描述您預期會發生什麼以及與實際結果有何不同。看[問]提示什麼是一個很好的解釋。 –
[MCVE]是必要的。 –
http://stackoverflow.com/questions/6127503/shuffle-array-in-c。這可能有助於 –