C++string数组的问题

#include<iostream>#include<string>usingnamespacestd;voidmain(){intn;cin>>n;strings[10... #include <iostream>
#include <string>using namespace std;
void main()
{
int n;
cin>>n;
string s[10];
for(int i=0;i<n;i++)
getline(cin,s[i]);
cout<<s[1]<<endl;
}
为什么输入
2
ab
cb
显示的是ab?
不是应该显示cb吗?
求大神指教
展开
 我来答
chujiangke001
2013-03-22 · TA获得超过1605个赞
知道小有建树答主
回答量:1352
采纳率:0%
帮助的人:696万
展开全部

#include <iostream>

#include <string>

using namespace std;

int  main()

{

 int n;

 cin>>n;

 string s[10];

char ch=cin.get();   //eat enter char 

 for(int i=0;i<n;i++)

  {

      cout<<i<<":";

      getline(cin,s[i]);

  }

  cout<<s[1]<<endl;

  return 0;

}

zhoujiong1004
推荐于2017-09-19 · TA获得超过357个赞
知道小有建树答主
回答量:402
采纳率:100%
帮助的人:359万
展开全部
#include <iostream>
#include <string>
using namespace std;
void main()
{
int n;
cin>>n;
getchar(); //这里需要一个来接收enter,不然这个回车键就是s[0]的内容,s[1]就是ab,
string s[10];
for(int i=0;i<2;i++)
{
getline(cin,s[i]); // 接受一个字符串,可以接收空格并输出,
}
cout<<s[1]<<endl;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冷岩2022
2013-03-22
知道答主
回答量:16
采纳率:0%
帮助的人:8.6万
展开全部
你的for循环是i=0 i是从0开始的,按程序循环开始第一次输入的是s[0]=2 s[1]=ab s[2]=cd,最后输出s[1],看一下前面敌营的付值就知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式