输入一串整数,输入命令排序。
输入a t 在这串整数后面添加整数 t
输入c \m \n 用n替换m
输入d t 删除t
输入s 排序
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
#include <vector>
using namespace std;
void display(vector<int> v)
{
cout<<"当前数据为:"<<endl;
vector<int>::iterator it;
for(it=v.begin(); it!=v.end(); ++it)
cout<<*it<<" ";
cout<<endl;
}
int main()
{
vector<int> v;
int a;
char order;
cout<<"输入数据:"<<endl;
while(cin>>a)
{
if(a==0)
break;
v.push_back(a);
}
display(v);
while(1)
{
cout<<"输入命令:"<<endl;
cin>>order;
getchar();//吸收回车
if(order=='a')
{
cin>>a;
v.push_back(a);
display(v);
}
else if(order=='c')
{
char a,b;
int i,j;
cin>>a>>i>>b>>j;
replace(v.begin(),v.end(),i,j);//将所有值为i,改成值为j
display(v);
}
else if(order=='d')
{
cin>>a;
vector<int>::iterator ii;
ii=find(v.begin(),v.end(),a);
v.erase(ii);
display(v);
}
else if(order=='s')
{
sort(v.begin(),v.end());
display(v);
}
else
break;
}
return 0;
}