求助:如何移除C++代码输出中的多余空行?(HackerRank问题)
问题:C++代码输出多余空行与预期不符
在HackerRank的编程题目中,我的C++代码输出了一行多余空行,和预期结果不符。对比网上的解决方案代码,两者完全一致,但找不到问题所在,求解决。
我的代码如下:
#include <iostream> #include <cstdio> using namespace std; int main() { int a, b; cin>>a; cout<<endl; cin>>b; for (int i=a; i<=b; i++) { if (i==1) { cout<<"one"<<endl; } else if (i==2) { cout<<"two"<<endl; } else if (i==3) { cout<<"three"<<endl; } else if (i==4) { cout<<"four"<<endl; } else if (i==5) { cout<<"five"<<endl; } else if (i==6) { cout<<"six"<<endl; } else if (i==7) { cout<<"seven"<<endl; } else if (i==8) { cout<<"eight"<<endl; } else if (i==9) { cout<<"nine"<<endl; } else { if (i%2==0) { cout<<"even"<<endl; } else { cout<<"odd"<<endl; } } } return 0; }
输入、预期输出与实际输出情况
- 输入:两个整数(示例为2和6)
- 预期输出:从对应数字的英文单词到另一数字的单词,每行一个,无多余空行(示例为two、three、four、five、six各占一行)
- 实际输出:开头多了一行空行,其余内容正确
解决方案
问题出在cin>>a;之后的cout<<endl;这行代码——它会在输出内容的最开头额外打印一个空行,直接删除这行代码即可解决问题。
内容的提问来源于stack exchange,提问作者dev
相关产品推荐
相关产品推荐

