源代码:
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
#include<string.h>
#define OK 1
#define ERROR 0
#define OVERFLOW -2
#define MAXSIZE 100
typedef int Status;
typedef struct
{
char no[8];
char name[20];
int score;
}student;
typedef student ElemType;
typedef struct
{
ElemType *elem;
int length;
}SqList;
Status InitList(SqList *L)
{
L->elem=(ElemType *)malloc(sizeof(ElemType)*MAXSIZE);
if(!L->elem) exit(OVERFLOW);
L->length=0;
return OK;
}
Status ListInsert(SqList &L,int i,ElemType e)
{
if((i<1)||(i>L.length+1)) return ERROR;
if(L.length==MAXSIZE) return ERROR;
for(int j=L.length;j>=i;j--)
{
L.elem[j+1]=L.elem[j];
}
L.elem[i]=e;
++L.length;
return OK;