顺序表的实现
#include <stdio.h>
#include <stdlib.h>
#define LISTSIZE 100
#define LISTINC 10
#define LEN sizeof(SqList)
typedef struct sequenceList{
int *elem;
int size;
int len;
}SqList;
int main()
{
SqList *list;
initList(list);
return 0;
}
int initList(SqList *list)
{
printf("\initList123\n");
(*list).elem = (int *)malloc(sizeof(int)*LISTSIZE);
printf("\initList456\n");
if(NULL == list->elem)
{
printf("\n内存申请错误\n");
return 0;
}
list->len = 0;
list->size = LISTSIZE;
printf("\n请输入数值:\n");
while(scanf("%d",list->elem[list->len++])!=EOF)
{
if(list->len >= list->size)
{
list->elem = (SqList *)realloc(list->elem,sizeof(LEN)*(LISTSIZE+LISTINC));
list->size+=LISTINC;
}
}
return 1;
}
int insertList(SqList *list)
{
if(0 == list->len)
{
printf("\n表为空\n");
}
if(list->len >= LISTSIZE)
{
list->elem = (int *)realloc(list->elem,sizeof(LEN)*(LISTSIZE+LISTINC));
list->size+=LISTINC;
}
printf("\n请输入元素:");
scanf("%d",list->elem[list->len]);
}
#include <stdlib.h>
#define LISTSIZE 100
#define LISTINC 10
#define LEN sizeof(SqList)
typedef struct sequenceList{
int *elem;
int size;
int len;
}SqList;
int main()
{
SqList *list;
initList(list);
return 0;
}
int initList(SqList *list)
{
printf("\initList123\n");
(*list).elem = (int *)malloc(sizeof(int)*LISTSIZE);
printf("\initList456\n");
if(NULL == list->elem)
{
printf("\n内存申请错误\n");
return 0;
}
list->len = 0;
list->size = LISTSIZE;
printf("\n请输入数值:\n");
while(scanf("%d",list->elem[list->len++])!=EOF)
{
if(list->len >= list->size)
{
list->elem = (SqList *)realloc(list->elem,sizeof(LEN)*(LISTSIZE+LISTINC));
list->size+=LISTINC;
}
}
return 1;
}
int insertList(SqList *list)
{
if(0 == list->len)
{
printf("\n表为空\n");
}
if(list->len >= LISTSIZE)
{
list->elem = (int *)realloc(list->elem,sizeof(LEN)*(LISTSIZE+LISTINC));
list->size+=LISTINC;
}
printf("\n请输入元素:");
scanf("%d",list->elem[list->len]);
}