#include <iostream>
using namespace std;
const int maxsize=100;
class list{
public:
list(int a[],int n);
void insertx(int i,int x);
int deletex(int i);
int get(int x);
int locatei(int i);
void bl();
private:
int length;
int data[maxsize];
};
list :: list(int a[],int n)
{
for(int i=0;i<n;i++)
data[i]=a[i];
length=n;
}
void list::insertx(int i,int x)
{
if(length==maxsize)
cout<<"上溢"<<endl;
else if(i>length||i<=0)
cout<<"位置有误"<<endl;
else
{
for(int j=length;j>=i;j--)
{
data[j]=data[j-1];
}
data[i-1]=x;
length++;
}
}
int list::deletex(int x)
{
int p;
for(int i=0;i<length-1;i++)
{
if(data[i]==x)
{
p=i+1;
for(int j=i;j<length-1;j++)
{
data[j]=data[j+1];
}
}
}
length--;
return p;
}
void list::bl()
{
for(int i=0;i<length;i++)
cout<<data[i]<<" ";
cout<<endl;
}
int list::get(int x)
{
for(int i=0;i<length;i++)
{
if(data[i]==x)
return i+1;
}
return 0;
}
int list::locatei(int i)
{
if(i<=0||i>length)
return 0;
return data[i-1];
}
int main()
{
int a[5]={1,2,3,5,8};
list l(a,5);
l.bl();
cout<<"删除的是第"<<l.deletex(9)<<"个元素"<<endl;
l.bl();
cout<<"插入:"<<endl;
l.insertx(2,9);
l.bl();
cout<<"元素2是第"<<l.get(2)<<"个元素"<<endl;
cout<<"第3个元素是"<<l.locatei(3)<<endl;
}
有问题请留言,我也是新手,大家一起解决