vector 中相关变量定义的问题
读一组整数到vector对象,头尾元素两两配对,计算每对元素的和,并输出。如果读入元素为奇数个,则提示用户中间一个元素没有求和,并输出其值。(对于中间元素的处理老是出问题,怎么声明first和last比较好呢?自己的程序如下)#include <iostream>
#include <vector>
using namespace std;
int main(){
vector<int> ivec;
int ival;
cout<<"Enter numbers:"<<endl;
while(cin>>ival)
ivec.push_back(ival);
if(ivec.size()==0){//计算首尾配对元素的和并输出
cout<<"No element!"<<endl;
return -1;
}
cout<<"Sum of each pair of counterpart elements in the vector:"<<endl;
vector<int>::size_type cnt=0;
vector<int>::size_type first=0;
vector<int>::value_type last=0;
for(vector<int>::size_type first=0,last=ivec.size()-1;first<last;++first,--last){
cout<<ivec[first]+ivec[last]<<"\t";
++cnt;
if(cnt%6==0)
cout<<endl;
}
if(first==last)//提示居中元素没有求和
cout<<endl
<<"The center element is not been summed"<<"and its value is"<<ivec[first]<<endl;
return 0;
}
怎么改才能让中间元素能正常符合题目显示呢?麻烦大家给与意见