初学顺序表
#include<stdio.h>#include<stdlib.h>
#include<string.h>
#define MAXSIZE 100
typedef struct student
{
char xuehao[14];
char name[20];
int sex;
char tel[13];
char qq[12];
}ElemType;
typedef struct
{
ElemType *elem;
int length;
int listsize;
}SqList;
void InitSqlist(SqList *L)
{
char flag;
int i,n;
ElemType *p;
L->elem=(ElemType*)malloc(MAXSIZE*sizeof(ElemType));
L->length=0;
L->listsize=MAXSIZE;
printf("是否输入初始数据?(Y/N)");
scanf("%c",&flag);
if(flag=='N'||'n')
return;
printf("请输入初始化的数据的个数:");
scanf("%d",&n);
if(n>L->listsize)
{
printf("数据太多,不足以储存!");
return;
}
p=L->elem;
L->length=n;
for(i=0;i<n;i++)
{
printf("请输入第个学生的数据(学号 姓名 性别(0或1) 联系电话 qq号)\n",i+1);
scanf("%s%s%d%s%s",p->xuehao,p->name,&p->sex,p->tel,p->qq);
}
return;
}
void PrintSqlist(SqList *L)
{
int i;
for(i=0;i<L->length;i++)
{
printf(" 学号 姓名 性别 联系方式 qq\n");
printf("%-10s%-10s",L->elem[i].xuehao,L->elem[i].name);
if(L->elem[i].sex)
printf("男");
else
printf("女");
printf("%-10s%-10s",L->elem[i].tel,L->elem[i].qq);
}
}
void main()
{
SqList L;
InitSqlist(SqList *L);
InitSqlist(SqList *L);
}