c ++为什么我在使用三元运算符时会出错
c++ why do i get errors when using ternary operator
这是我的代码,但我找不到问题所在。
如果有任何帮助,我将不胜感激!
#include <iostream>
using namespace std;
int main()
{
int x,I=2;
for (x = 100 ; x <= 500; x++)
{
(x % 3 == 0 && x % 5 == 0)? (cout << x << endl) : (I = 2);
}
return 0;
}
错误:
更新:
我知道我可以使用 if ,else 但这只是让我感到好奇,顺便说一句,这个程序应该找到从 100 到 500 的所有数字都可以被 3 和 5 整除。
另外如果我 运行
#include <iostream>
using namespace std;
int main()
{
int x,I=2;
for (x = 100 ; x <= 500; x++)
{
((x % 3 == 0) && (x % 5 == 0))? (cout << x << endl) : (cout<<"somthing");
}
return 0;
}
它工作正常所以我猜问题出在第二个表达式中,有没有办法用什么都不做的东西替换它(这是 I=2 的意图)
三元运算符不是 if-else。这是为了做这样的事情:
int i = (3 < 4) ? 3 : 4;
此用法请使用 if-else。
这是我的代码,但我找不到问题所在。 如果有任何帮助,我将不胜感激!
#include <iostream>
using namespace std;
int main()
{
int x,I=2;
for (x = 100 ; x <= 500; x++)
{
(x % 3 == 0 && x % 5 == 0)? (cout << x << endl) : (I = 2);
}
return 0;
}
错误:
更新: 我知道我可以使用 if ,else 但这只是让我感到好奇,顺便说一句,这个程序应该找到从 100 到 500 的所有数字都可以被 3 和 5 整除。 另外如果我 运行
#include <iostream>
using namespace std;
int main()
{
int x,I=2;
for (x = 100 ; x <= 500; x++)
{
((x % 3 == 0) && (x % 5 == 0))? (cout << x << endl) : (cout<<"somthing");
}
return 0;
}
它工作正常所以我猜问题出在第二个表达式中,有没有办法用什么都不做的东西替换它(这是 I=2 的意图)
三元运算符不是 if-else。这是为了做这样的事情:
int i = (3 < 4) ? 3 : 4;
此用法请使用 if-else。