c++,cout输出一个数组...空格问题..

比如一个数组a,
----要求的输出:
1 2 3 4 5 6 7 8 (最后一个数后没有空格)

int a[]={1,2,3,4,5,6,7,8};
for(int i = 0;i<8;i++){
cout<<a[i];
if(i!=7)cout<<" "; //这里用空格隔开
}
但是我觉得这个方法..是不是很笨呢..每次都要运行if啊,有没有简化一点的..再说如果这是一个数组的话,vector,这样写就很挫了吧...

我初学,谢谢.....

int a[]={1,2,3,4,5,6,7,8};
for(int i = 0;i<7;i++)//8-1=7
cout<<a[i]<<" ";
cout<<a[i];

vector a;

........数据设置
int len= a.size();
for(int i = 0;i< len-1 ;i++)// len-1
cout<<a[i]<<" ";
cout<<a[i]; //这里用空格隔开
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-02
你这个数组中元素个数是否固定?如果不固定那真没有什么好办法,固定的话可以用数组长度进行判断,vector如果你会用的话很方便,直接用size()就可以了
第2个回答  推荐于2018-03-10
for(int i=0;i<7;i++){
cout<<a[i]<<" ";
}
cout<<a[i++];
这样呢?
感觉变化其实不大啊本回答被网友采纳