c++ cin 数组和cout数组的问题?
#include<iostream>usingnamespacestd;intmain(){inta[12];for(inti=0;i<12;i++){cin>>a[i]...
#include <iostream>
using namespace std;
int main()
{
int a[12];
for(int i=0;i<12;i++)
{
cin>>a[i];
cout<<a[i]<<" ";
}
return 0;
}
题目是输入12个数值,然后输出12数值。
用上面的代码能够实现。
但是有一点想不通,按照这个for循环的语句,不应该是输入第1个数后,马上输出第1个数。然后再输入第2个数,再输出第2个数,以些循环。
为什么最后会是一次输入12个数后,又一次性输出了12个数?
这是数组的原理导致的还是cin的原理? 展开
using namespace std;
int main()
{
int a[12];
for(int i=0;i<12;i++)
{
cin>>a[i];
cout<<a[i]<<" ";
}
return 0;
}
题目是输入12个数值,然后输出12数值。
用上面的代码能够实现。
但是有一点想不通,按照这个for循环的语句,不应该是输入第1个数后,马上输出第1个数。然后再输入第2个数,再输出第2个数,以些循环。
为什么最后会是一次输入12个数后,又一次性输出了12个数?
这是数组的原理导致的还是cin的原理? 展开
5个回答
展开全部
cout有缓存区,如果在cout那里加上/n,结果就不一样了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是因为输出缓冲区的原因,你可以手动刷新缓冲区来是输出变得及时,比如末尾加上endl
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你有两种输入方式:
1、输入一个数就按一次回车
结果是每输入一个数就马上输出一个数。
2、一次输完所有数后再按一次回车
结果就是出现你所描述的情况。
1、输入一个数就按一次回车
结果是每输入一个数就马上输出一个数。
2、一次输完所有数后再按一次回车
结果就是出现你所描述的情况。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的分析很正确,这个题目有问题,应该是一个for循环输入,后面再一个for循环输出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询