gpt4 book ai didi

c++ - 如何获取新的数组值? C++

转载 作者:太空宇宙 更新时间:2023-11-04 11:51:08 26 4
gpt4 key购买 nike

所以我用一个 5x5 的二​​维数组创建了一个函数。内部值在五个不同值之间随机分配并放置在数组中。然后我在我的 main(); 中调用这个函数。但是,问题是当我调用数组的函数时,结果总是一样的。所以每次我运行该函数时,数组似乎都没有被重置或获得新的随机值。

如何解决这个问题?我希望每次运行该函数时数组都获得新值,以便每次我从 main() 调用该函数时;数组中会有新的值,

我的完整代码:

#include <iostream>
#include <ctime>

using namespace std;


char array2D[5][5];

int roll(){

srand (time(0));

for (int x=0; x<5; x++){
for (int y=0; y<5; y++){
array2D[x][y] = "ABCDE"[rand() % 5];
}
}

for (int x=0; x<5; x++){
for (int y=0; y<5; y++){
cout << array2D[x][y];
}
cout << endl;
}

cout << endl;


return 0;

}




int main()
{
roll();
roll();
roll();

return 0;
}

谢谢。

最佳答案

你不应该多次调用 srand(除非你真的想重复一些随机数)。在您的情况下,我怀疑在同一秒内运行所有 roll 函数的可能性非常高,因此它们都会给出相同的随机数。

关于c++ - 如何获取新的数组值? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18186377/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com