//方案2
#include <iostream>
#include<vector>
#include <string>
using namespace std ;
const int Seasons = 4 ;
const string str1[Seasons] = {"Spring" ,"Summer","Fall","Winter"} ;
void fill(vector<int> &) ;
void show(vector<int>::iterator , vector<int>::iterator) ;
int main()
{
vector<int> ivec ;
fill(ivec) ;
show(ivec.begin() , ivec.end()) ;
return 0 ;
}
void fill(vector<int> &ivec1) //这里要传引用,不然无法改变vector的值
{
int temp ;
for(int i =0 ;i< Seasons ;i++)
{
cout<<"Enter "<<str1[i] <<" expenses: ";
cin>>temp ;
ivec1.push_back(temp) ;
}
}
void show(vector<int>::iterator bn, vector<int>::iterator ed )
{
double total = 0.0 ;
cout<<"\nEXPENSES\n" ;
int i =0 ;
for(vector<int>::iterator iter = bn ;iter != ed ;iter++,i++)
{
cout<<str1[i]<<": $" <<(*iter)<<endl ;
total += (*iter) ;
}
cout<<"Total Exoenses: $"<<total<<endl ;
}