怎样建立一个顺序表和单链表?为毛我写的程序是错的?
#include<stdio.h>#include<malloc.h>
#define Maxsize 50
typedef int ElemType;
typedef struct
{
ElemType data;
int length;
}SqList;
void CreateList(SqList *&L,int n,ElemType a[])
{
int i;
L=(SqList *)malloc(sizeof(SqList));
for(i=0;i<n;i++)
{
L->data=a;
}
L->length=n;
}
void InitList(SqList *&L)
{
L=(SqList *)malloc(sizeof(SqList));
L->length=0;
}
bool ListInsert(SqList *&L,int i,ElemType b)
{
int j,k=4;
if(L->data)
return false;
if(i<1||i>L->length+1)
return false;
if(i<L->length)
{
for(j=i;j<L->length;j++)
{
L->data=L->data;
}
for(j=i;j<=i+4;j++)
{
L->data=b;
k--;
}
}
return true;
}
bool ListEmpty(SqList *&L)
{
int i;
for(i=0;i<L->length;i++)
{
if(L->data!=NULL)
{
printf("线性表不为空!");
return true;
}
else{
printf("线性表为空!");
return false;
}
}
}
void DispList(SqList *&L)
{
int i;
for(i=0;i<L->length;i++)
{
printf("%d",L->data);
}
printf("\n");
}
main()
{
SqList *L;
int b={
'a','b','c','d','e'
};
L=(SqList *)malloc(sizeof(SqList));
ListInsert(L);
ListEmpty(L);
DispList(L);
}
自己对照参考代码来排错吧~ 插入算法那个好像是Maxsize-1:smile 加个注释呗,,亲。。 神马注释?亲 感谢分享
页:
[1]