实验报告
实验目的:学生管理系统(顺序表)
实验要求:
源程序:
#include <>
#include <>
#include<>
#define MaxSize 1000
typedef struct
{
char xh[40];
char xm[40];
int cj;
}DataType; //学生的结构
typedef struct {
DataType data[MaxSize]; //定义表的数据类型
int length; //数据元素分别放置在data[0]到data[length-1]当中
} SqList; //表的结构
void liebiao(SqList *L) //建立表格
{
int k,n;
char q;
printf("请输入,输入学生的个数:\n");
fflush(stdin);
scanf("%d",&n);
for(k=0;k<=n-1;k++)
{
printf("请输入学生学号\n");
scanf("%s",L->data[k].xh);
printf("请输入学生名字\n");
scanf("%s",L->data[k].xm);
printf("请输入学生成绩\n");
scanf("%d",&L->data[k].cj);
}
L->length=n;
}
void qb(SqList *L) //全部输出
{
int k,w;
for(k=0;k<L->length;k++)
{
w=k+1;
printf("第%d位学生:",w);
printf("%s %s %d\n",L->data[k].xh,L->data[k].xm,L->data[k].cj);
}
}
int cr(SqList *L,DataType *xs,int i) //插入信息
{
int j;
if(L->length==MaxSize)
{
printf("没有!");
return 0;
}
else if((i<0)||(i>L->length))
{
printf("程序溢出,不符合");
return 0;
}
else
{
for(j=L->length-1;j>=i;j--)
{
strcpy(L->data[j+1].xh,L->data[j].xh);
strcpy(L->data[j+1].xm,L->data[j].xm);
L->data[j+1].cj=L->data[j].cj;
}
strcpy(L->data[i].xh,xs->xh);
strcpy(L->data[i].xm,xs->xm);
L->data[i].cj=xs->cj;
L->length=L->length+1;
}
return 0;
}
int cz(SqList *L) //查找信息
{
char xh[40];
char xm[40];
int cj;
int i=0,u;
printf(" 1、按学号查询 \n");
printf(" 1、按查询 \n");
printf(" 1、按成绩查询 \n");
printf("请选择:");
fflush(stdin);
scanf("%d",&u);
if (u==1)
{
printf("请输入要查找学生的学号:");
scanf("%s",xh);
for(i=0;i<L->length;i++)
{
if(strcmp(L->data[i].xh,xh)=
顺序表,链表总结实验报告 来自淘豆网m.daumloan.com转载请标明出处.