顺序表L1必须要初始化才能执行,我已经编写并调用,却仍然说我的L1没有初始化
#include "stdafx.h"
#include <iostream>
using namespace std;
const int MAX=10;
typedef struct List
{ int length;
int top;
int a[MAX];
int *elem;}list;
int a[10];
int length=10;
list deletelist(list S,int n);
list InitList_Sq(list S);
void display();
list InitList_Sq(list S)//构造一个空的顺序表
{
S.elem=new int[MAX];//为顺序表分配一个大小为MAXSIZE的数组空间
if(!S.elem) cout<<"存储失败";//存储失败
S.length=0;//空表长度为零
return S;
}
list Creatlist(list L)
{cout<<"请依次输入编号1-10:";
for(int i=0;i<length;i++)
{ if(L.top<length)
L.top++;
cin>>L.a[L.top];}
return L;
}
list deletelist(list L)
{ cout<<"请输入序号N"<<endl;
L.top=-1;
int n;
cin>>n;
for(int i=0;i<length;i++)
if(n=i+1)
{ a[i]=a[i+1];
L.length--;}
return L;}
void display(list L)
{ cout<<"此时数组中还剩下的元素是:"<<endl;
for(int i=0;i<1;i++)
cout<<a[i];}
int main()
{ list L1;
InitList_Sq(L1);
Creatlist(L1);
deletelist(L1);
display(L1);
return 0;
}