【发布时间】:2018-01-11 11:02:08
【问题描述】:
我正在尝试查看是否可以制作 fizzbuzz c++ switch 语句。我收到一条错误消息,说 i 在 const 表达式中不可用。这是否意味着我不能让这件事发挥作用?或者有解决办法吗?这是我的代码。
#include <iostream>
using namespace std;
int main() {
for(int = 1; 1 <= 100; i++){
switch(true){
case(i % 3 == 0 & i % 5 == 0):
cout << "fizzbuzz" << endl;
break;
case(i % 3 == 0):
cout << "fizz" << endl;
break;
case(i % 5 == 0):
cout << "fizz" << endl;
break;
default:
cout << i << endl;
}
}
}
【问题讨论】:
-
看起来你需要重新审视
switch的工作原理:en.cppreference.com/w/cpp/language/switch -
你不能那样使用
switch/case。请改用if、else if。 -
我认为您需要先阅读一本好的 C++ 书籍。这段代码有很多错误
-
cases 只允许使用常量
标签: c++ for-loop switch-statement fizzbuzz