我写这篇文章是为了好玩:
#include <iostream>
#include <cstdlib>
using namespace std;
int Arsenal = rand()%3;
int Norwich = rand()%3;
int main () {
if (Arsenal > Norwich) {
cout << "Arsenal win the three points, they are in the Top Four";
return 0;
} else if (Arsenal == Norwich) {
cout << "The game was a draw, both teams gained a point";
return 0;
} else (Norwich > Arsenal) {
cout << "Norwich won, Arsenal lost";
return 0;
}
}
我尝试用g ++编译它,但是我收到了这个错误:
arsenalNorwich.cpp: In function, 'int main'
arsenalNorwich.cpp:15:30: error: expected ';' before '{' token
我不知道我做错了什么,我学校的CS导师也没有。虽然它只是为了好玩,但却让我发疯。
答案 0 :(得分:8)
你错过了一个if
:
else if (Norwich > Arsenal)
///^^^if missing
同时,放
是不好的 int Arsenal = rand()%3;
int Norwich = rand()%3;
在main
之前。另一点是你应该在调用rand()
之前先设置随机种子。
您的if-else
可简化如下:
if (Arsenal > Norwich) {
cout << "Arsenal win the three points, they are in the Top Four";
} else if (Arsenal == Norwich) {
cout << "The game was a draw, both teams gained a point";
} else { //^^^no need to compare values again since it must be Norwich > Arsenal
//when execution reaches this point
cout << "Norwich won, Arsenal lost";
}
return 0;