我想用随机数随机生成两个cout中的一个

时间:2014-02-26 19:02:09

标签: random cout

我正在尝试使用在1和2之间随机选择的数字并使用它来显示随机cout。我不能让这个工作。有什么建议?谢谢!

#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
srand(time(0));

for (int i = 1; i <= 1; i++)
{
    int d1 = rand() % 2 + 1;
    cout << d1 << endl;

cout << endl;
system("pause");

if (d1 == "1");
{
    cout << "hello";
}

if (d1 == "2")
{
    cout << "goodbye";
}

return 0;

}

4 个答案:

答案 0 :(得分:1)

首先,我建议您确保不将int与字符串进行比较。同样从第一个if语句后删除分号。

if (d1 == 1)
{

 cout << "hello";

}

接下来创建一个else if语句而不是一个新的if语句。

 else if (d1 == 2)
{
cout << "goodbye";
}

这应该可以解决所有问题。希望这可以帮助。 Goobyebye!

答案 1 :(得分:0)

您正在将int与字符串进行比较。改为,例如, d1 == 1 这应该让你去...

答案 2 :(得分:0)

当您发表如下声明时:

if (d1 == "1")

您正在比较字符串和整数。尝试:

if(d1 == 1)

答案 3 :(得分:0)

将int与int进行比较,然后使用else子句。 此外,您的if语句不需要分号。

if (d1 == 1)
{
    cout << "hello";
}
else
{
    cout << "goodbye";
}