Kal*_*nan -22 c++ while-loop testcase
我的需求:
使用 while 循环迎接尽可能多的名称在标准输入中可用。当您将字符串 '42' 作为名称读取时停止。
我的编码:
#include<iostream>
using namespace std;
int main()
{
int input=1;
int i= 0;
string name;
while(input<=i)
{
cin>>name;
if(name=="42")
{
break;
}
else
{
cout<<"Hello "<<name<<"!";
i++;
}
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果:
对于输入 42,测试用例通过。对于其他输入,测试用例失败。请发布您的答案。
大约 1 年后回答:
非常抱歉这个问题。这是我在对 C++ 了解 0 时问的问题。这可能对新生有用。
你的循环有缺陷
int input=1;
int i= 0;
string name;
while(input<=i)
Run Code Online (Sandbox Code Playgroud)
asinput大于i开始
您认为测试用例适用于 42,但实际上循环中的逻辑从未执行过。只是控制台输出相同(即没有)但您的代码永远不会cin达到检查输入的程度为 42