2.09
学习到两点:++i和i++的区别;
用一个从零起++的变量可优化二重循环;
//版权所有贾涛
#include <iostream>
#include<math.h>
#include<stdlib.h>
using namespace std;
class List{
int Maxsize,last; //last??????????????????��???��???0??
int *data;
public:List(int size){Maxsize=size; //??????
last=-1;
data=new int[Maxsize];
}
~List(){delete[] data;}
void input(){ //??????
while(1){
cout<<"????????????????��????????��??????"<<endl;
cin>>last;
if(last<=Maxsize) break;
}
cout<<"??????????????"<<endl;
for(int i=0;i<=last;i++){
cin>>data[i];
}
}
void output(){ //???????
cout<<"???????????"<<endl;
for(int i=0;i<last;i++){
cout<<data[i]<<" ";
}
cout<<data[last]<<endl;
}
void Remove(int x) { //?��?????????
int n = last + 1;
last = -1;
for (int i = 0; i < n; i++) {
if (data[i] <=x) {
data[++last] = data[i];
}
}
}
};
int main(){
List l(1000);
l.input();
int x;
cout<<"????????????:"<<endl;
cin>>x;
l.Remove(x);
l.output();
return 0;
}