描述
设计整数顺序表的基本运算程序,并用相关数据进行测试
输入
顺序输入顺序表A的元素个数及各个元素
输出
第一行:创建顺序表A后,输出所有元素
第二行:删除第一个元素,输出删除后的所有元素
第三行:输出删除元素后顺序表的长度
第四行:在第二元素处插入一个新的元素100
第五行:输出第一个元素100所在位置
样例输入
6
1 2 3 4 0 9
样例输出
1 2 3 4 0 9
2 3 4 0 9
5
2 100 3 4 0 9
2
AC代码
#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
const int maxn=10000;
template <class T>
class li
{
T a[maxn];
int length;
public:
li();
li(T b[],int n);
//~li();
void show();
void shan();
void cha();
void zhao();
void out();
};
template <class T>
void li<T>::out()
{
cout<<length<<endl;
}
template <class T>
li<T>::li(T b[],int n)
{
for(int i=0;i<n;i++)
a[i]=b[i];
length=n;
}
template <class T>
void li<T>::show()
{
for(int i=0;i<length;i++)
{
cout<<a[i]<<" ";
}
cout<<endl;
}
template <class T>
void li<T>::shan()
{
for(int i=0;i<length-1;i++)
{
a[i]=a[i+1];
}
length--;
}
template <class T>
void li<T>::cha()
{
for(int i=length;i>=2;i--)
{
a[i]=a[i-1];
}
a[1]=100;
length++;
}
template <class T>
void li<T>::zhao()
{
for(int i=0;i<length;i++)
{
if(a[i]==100)
{
cout<<i+1<<endl;
break;
}
}
}
int main()
{
int n,b[maxn];
cin>>n;
for(int i=0;i<n;i++)
cin>>b[i];
li<int> k(b,n);
k.show();
k.shan();
k.show();
k.out();
k.cha();
k.show();
k.zhao();
}