#include<stdio.h>
#include<stdlib.h>
#define MAX 9
#define ERROR 0
#define WARN -1
#define OK 1
int *initial_list();
int insert_list(sqllist *l);
int delete_list(sqllist *l);
int View_list(sqllist *l);
int Add_list(sqllist *l);
struct stu
{
char stuid[10];
char stuname[20];
};
typedef struct
{
struct stu class[MAX];
int last;
}sqllist;
int main(void)
{
sqllist *p;
char ch;
clrscr();
puts("======================================================="

;
puts("==欢迎使用hdy的学生记录管理程序=== ."

;
puts("==请按任意键进入学生菜单======="

;
puts("======================================================="

;
getch();
p=initial_list();
while(1)
{
clrscr();
puts("1:初始化设置(按 1 )."

;
puts("2:插入学生数据(按 2 )."

;
puts("3:删除学生数据(按 3 ). "

;
puts("4:查看学生数据(按 4)."

;
puts("5:退出(按 5 )."

;
ch=getch();
switch (ch)
{
case '1':add_list(p);break;
case '2':insert_list(p);break;
case '3':delete_list(p);break;
case '4':view_list(p);break;
case '5':exit(0);break;
}
}
return OK;
}
int *initial_list()
{
sqllist *l;
l=(sqllist *)malloc(sizeof(sqllist));
l->last=-1;
return l;
}
int add_list(sqllist *l)
{
int count;
for(cuont=0;count<MAX;count++)
{
scanf("%s%s",l->class[count].stuid,l->class[count].stuname);
}
return OK;
}
int insert_list(sqllist *l)
{
struct stu e;
int i,j;
puts("请输入你要插入记录的位置和数据"

;
scanf("%d%s%s",&i,e.stuid,e.stuname);
if(l->last==MAX-1)
{
puts("表以满");
return WARN;
}
if(i<1||i>l->last+2)
{
puts("位置错");
return ERROR;
}
for(j=l->last;j>=i-1;j--)
l->class[j+1]=l->class[j];
l->class[i-1]=x;
++l->last;
return OK;
}
int delete_list(sqllist *l)
{
int i,j;
puts("请输入你要删除记录的位置");
scanf("%d",&i);
if(i<1||i>l->last)
{
puts("位置错");
return ERROR;
}
for(j=i;j<l->last+1;j++)
l->class[j-1]=l->class[j];
--l->last;
return OK;
}
int view_list(sqllist *l)
{
int count;
for(count=0;count<=MAX;count++)
{
printf("%s-t%s\n",l->class[count].stuid,l->class[count].stuname);
}
return OK;
}