//文件名"学生.h"
#include<stdio.h>
typedef struct Student
{
long number;
char name[10];
char sex[4];
int age;
//float grade;
}StudentType;
typedef StudentType DataType;
#define MaxSize 100
typedef struct
{
DataType List[MaxSize];
int size;
}SeqList;
void ListInitiate(SeqList *L)
{
L->size=0;
}
int ListLength(SeqList L)
{
return L.size;
}
int ListInsert(SeqList *L,int i,DataType x)
{
int j;
if(L->size>=MaxSize)
{
printf("顺序表已满无法插入!\n");
return 0;
}
else if (i<0||i>L->size)
{
printf("参数i不合法!\n");
return 0;
}
else
{
for(j=L->size;j>i;j--)
{
L->List[j]=L->List[j-1];
}
L->List[i]=x;//插入x
L->size++;//元素个数加一
return 1;
}
}
int ListGet(SeqList L,int i,DataType *x){
if(i<0||i>L.size-1)
{
printf("参数i不合法!\n");
return 0;
}
else
{
*x=L.List[i];
return 1;
}
}
int ListDelete(SeqList *L,int i,DataType *x){
int j;
if(L->size<=0){
printf("顺序表已空无元素可删!\n");
return 0;
}
else if(i<0||i>L->size-1){
printf("参数i不合法");
return 0;
}
else{
*x=L->List[i];
for(j=i+1;j<=L->size-1;j++)
L->List[j-1]=L->List[j];
L->size--;
return 1;
}
}
#include<stdio.h>
#include "学生.h"
int main(void)
{
SeqList myList;
int i;
//定义结构体类型数据变量
StudentType x[3]={{2000001,"张三","男",20},
{2000002,"李四","男",21},
{2000003,"王五","女",22}};
StudentType s;
ListInitiate(&myList);//调用初始化函数
//插入函数调用
/*ListInsert(&myList,0,x[0]);
ListInsert(&myList,1,x[1]);
ListInsert(&myList,2,x[2]);*/
for(i=0;i<3;i++)
{
if((ListInsert(&myList,i,x[1]))==0)
{
printf("错误!");
return 0;
}
}
for(i=0;i<ListLength(myList);i++)
{
if(ListGet(myList,i,&s)==0)
{
printf("错误!");
return 1;
}
else
//显示数据
printf("%d %s %s %d \n",s.number,s.name,s.sex,s.age);
}
//ListSort(myList);
}
请在上述代码中修改使其实现
2000001,"张三","男",20
2000002,"李四","男",21
2000003,"王五","女",22
的顺序表。