用链表实现学生信息管理系统主程序文件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
break;
case 6:
game4(); /*调用插入模块*/
break;
case 7:
game5(); /*调用查找模块*/
break;
case 8:
printf("\t再见!\n");
return;
}
}
}
//**********************************
//*菜单选择函数: int menu_select()*
stud=(STD *)malloc(LEN);
scanf("%*c");
scanf("%d%s",&stud->num,&stud->name);
if(stud->num<0)
{printf("\t输入的学号不能为负数,请重新选择插入!\n");
return;
}
head1=insert(head,stud);
//**********************************
int menu_select()
{
int cn;
for(;;)
{ printf("\n");
printf("\n");
printf("\n");
printf("\t1.追加法建表\n");
printf("\t2.插入法建表\n");
void handle_menu1()
{
int h;
for(;;)
{
h=menu_select();
switch(h)
{ case 1:
/* printf("\t进入追加法建表\n"); */
creat1(); /*调用追加法建表功能模块*/
break;
case 2:
/* printf("\t进入插入法建表\n"); */
/*函数参数:void */
/*函数返回值: void */
/**********************************/
void game4()
{
char ch;
STD *stud,*head=head1;system("CLS");
printf("\t仅限在表1中插入!\n");
printf("\t输入要插入结点的学号和姓名(以空格隔开):");
creat2(); /*调用插入法建表功能模块*/
break;
case 3:
/* printf("\t输出链表1的结果\n"); */
print(head1);
break;
case 4:
/* printf("\t输出链表2的结果\n"); */
print(head2);
break;
case 5:
game3(); /*调用删除模块*/
scanf("%d",&cn);//gets(s);
//cn=atoi(s);
if(cn<1||cn>8)
printf("\n\t输入错误,重选1-8:");
else
break;
}
return cn;
}
/**********************************/
/*对链表插入操作*/
/*函数原型: void game4(); */
{
return head;
}
printf("\t3.输出链表1\n"Hale Waihona Puke Baidu;
printf("\t4.输出链表2\n");
printf("\t5.删除一个结点\n");
printf("\t6.插入一个结点\n");
printf("\t7.查找一个结点\n");
printf("\t8.退出程序\n");
printf("\t选择1-8:");
/*******************************/
/*主程序文件*/
/*******************************/
void main()
{
handle_menu1();
}
/*****************************/
/*菜单处理函数*/
/*****************************/
printf("\t输入回车键返回!\n");
getchar();
system("CLS");
printf("\n");
}
/**************************************/
/*插入模块*/
/**************************************/
STD *insert(STD *head,STD *stud)
case 6:
game4(); /*调用插入模块*/
break;
case 7:
game5(); /*调用查找模块*/
break;
case 8:
printf("\t再见!\n");
return;
}
}
}
//**********************************
//*菜单选择函数: int menu_select()*
stud=(STD *)malloc(LEN);
scanf("%*c");
scanf("%d%s",&stud->num,&stud->name);
if(stud->num<0)
{printf("\t输入的学号不能为负数,请重新选择插入!\n");
return;
}
head1=insert(head,stud);
//**********************************
int menu_select()
{
int cn;
for(;;)
{ printf("\n");
printf("\n");
printf("\n");
printf("\t1.追加法建表\n");
printf("\t2.插入法建表\n");
void handle_menu1()
{
int h;
for(;;)
{
h=menu_select();
switch(h)
{ case 1:
/* printf("\t进入追加法建表\n"); */
creat1(); /*调用追加法建表功能模块*/
break;
case 2:
/* printf("\t进入插入法建表\n"); */
/*函数参数:void */
/*函数返回值: void */
/**********************************/
void game4()
{
char ch;
STD *stud,*head=head1;system("CLS");
printf("\t仅限在表1中插入!\n");
printf("\t输入要插入结点的学号和姓名(以空格隔开):");
creat2(); /*调用插入法建表功能模块*/
break;
case 3:
/* printf("\t输出链表1的结果\n"); */
print(head1);
break;
case 4:
/* printf("\t输出链表2的结果\n"); */
print(head2);
break;
case 5:
game3(); /*调用删除模块*/
scanf("%d",&cn);//gets(s);
//cn=atoi(s);
if(cn<1||cn>8)
printf("\n\t输入错误,重选1-8:");
else
break;
}
return cn;
}
/**********************************/
/*对链表插入操作*/
/*函数原型: void game4(); */
{
return head;
}
printf("\t3.输出链表1\n"Hale Waihona Puke Baidu;
printf("\t4.输出链表2\n");
printf("\t5.删除一个结点\n");
printf("\t6.插入一个结点\n");
printf("\t7.查找一个结点\n");
printf("\t8.退出程序\n");
printf("\t选择1-8:");
/*******************************/
/*主程序文件*/
/*******************************/
void main()
{
handle_menu1();
}
/*****************************/
/*菜单处理函数*/
/*****************************/
printf("\t输入回车键返回!\n");
getchar();
system("CLS");
printf("\n");
}
/**************************************/
/*插入模块*/
/**************************************/
STD *insert(STD *head,STD *stud)