C++随机函数制作笑脸
C++ Random Function making smiley faces
我正在研究战舰 C++ 程序。我正在测试如何设置船只和水域。我有一个数组,我使用 for 循环为数组中的每个 int 创建一个随机数。它生成的随机数是一个笑脸。
#include <iostream>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]) {
int picks = 0;
char arena[25] = {};
for(int i = 0; i != 24; i++) {
srand(time(0));
picks = rand() % 3;
arena[i] = picks;
}
for(int i = 0; i != 24; i++)
cout << arena[i];
cout << endl;
for(int i = 0; i != 24; i++) {
if(arena[i] = 1)
cout << "~";
else if(arena[i] = 2)
cout << "~";
else if(arena[i] = 3)
cout << "#";
}
cout << endl;
system("PAUSE");
}
你正在生成 0 到 2 之间的值,并将它们分配给 character 数组的元素,这样当它们被打印出来时,具有这些代码的字符(其中显然是一张笑脸)被打印出来。目前还不清楚你真正想要什么,但如果你希望为每个 0 值打印一个 0
,那么你可以打印 (arena[i]+'0')
(或者,更好的是,正确格式化输出正如其他人所建议的那样)。
1.Put 循环前的 srand(time(NULL))
。
2.picks = rand() % 3
==> picks = rand() % 3 + 1
3.if (arena[i] = 1)
==> if (arena[i] == 1)
我正在研究战舰 C++ 程序。我正在测试如何设置船只和水域。我有一个数组,我使用 for 循环为数组中的每个 int 创建一个随机数。它生成的随机数是一个笑脸。
#include <iostream>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]) {
int picks = 0;
char arena[25] = {};
for(int i = 0; i != 24; i++) {
srand(time(0));
picks = rand() % 3;
arena[i] = picks;
}
for(int i = 0; i != 24; i++)
cout << arena[i];
cout << endl;
for(int i = 0; i != 24; i++) {
if(arena[i] = 1)
cout << "~";
else if(arena[i] = 2)
cout << "~";
else if(arena[i] = 3)
cout << "#";
}
cout << endl;
system("PAUSE");
}
你正在生成 0 到 2 之间的值,并将它们分配给 character 数组的元素,这样当它们被打印出来时,具有这些代码的字符(其中显然是一张笑脸)被打印出来。目前还不清楚你真正想要什么,但如果你希望为每个 0 值打印一个 0
,那么你可以打印 (arena[i]+'0')
(或者,更好的是,正确格式化输出正如其他人所建议的那样)。
1.Put 循环前的 srand(time(NULL))
。
2.picks = rand() % 3
==> picks = rand() % 3 + 1
3.if (arena[i] = 1)
==> if (arena[i] == 1)