预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

三江学院 SANJIANGUNIVERSITY 综合程序设计与实践 ★ 指导书 (2012年6-7月) 题目:开发一个简单的学籍管理程序 所属学院:电子信息工程学院 姓名:刘夫兴 班级:110091A 指导教师:杨丽萍老师 综合程序设计与实践 指导书 题目:开发一个简单的学籍管理程序。 内容包括: 建立一个学生信息单链表 输出链表中的学生信息 在链表中查找某个学生信息 在链表中插入一个学生结点信息 在链表中删除一个学生结点 退出该管理系统 任务 设计一个菜单驱动程序(仿照课程设计之一),由老师提供并完成了功能1.—2.。 在这个管理系统中加入三个模块,即查找模块、插入模块和删除模块。使程序能正确运行。 四.提供能使程序能正确运行的源程序清单。 源程序清单,如下: #include<stdio.h> #include<string.h> #include<malloc.h> #include<stdlib.h> typedefstructnode { intnum; charname[20]; charsex[8]; charcla[20]; charpro[20]; charadress[10]; structnode*next; }STD; #defineLENsizeof(STD) #defineNEW(STD*)malloc(LEN) intmenu_select(); STD*head1,*head2; intn=0; voidcreat1(void)/*追加法建表*/ {STD*p1,*p2; system("CLS"); head1=NULL; p1=(STD*)malloc(LEN); p2=p1; printf("建表方法1追加法建表!\n"); printf("请依次输入:\n学号姓名性别班级专业籍贯(注:若输入学号为0,则退出建表!)\n"); scanf("%d%s%s%s%s%s",&p1->num,p1->name,p1->sex,p1->cla,p1->pro,p1->adress); while(p1->num!=0) {n++; if(n==1) head1=p1; else p2->next=p1; p2=p1; p1=(STD*)malloc(LEN); scanf("%d%s%s%s%s%s",&p1->num,p1->name,p1->sex,p1->cla,p1->pro,p1->adress); } free(p1);p2->next=NULL; scanf("%*c"); printf("按回车键继续!\n"); getchar(); system("CLS"); return; } voidcreat2(void)/*插入法建表*/ {STD*p1; head2=NULL; system("CLS"); p1=(STD*)malloc(LEN); printf("建表方法2插入法建表!\n"); printf("请依次输入:学号姓名性别班级专业籍贯(注:若输入学号为0,则退出建表!)\n"); scanf("%d%s%s%s%s%s",&p1->num,p1->name,p1->sex,p1->cla,p1->pro,p1->adress); while(p1->num!=0) {p1->next=head2; head2=p1; p1=(STD*)malloc(LEN); scanf("%d%s%s%s%s%s",&p1->num,p1->name,p1->sex,p1->cla,p1->pro,p1->adress); } scanf("%*c"); printf("按回车键继续!\n"); getchar(); system("CLS"); free(p1); return; } voidsearch(structnode*head,char*x)/*查找函数*/ {STD*p,*q; if(head==NULL) printf("Thisisaemptylist.");/*空链表情况*/ else p=head; while(strcmp(x,p->name)!=0&&p->next!=NULL) {q=p; p=p->next; }/*q指针尾随p指针向表尾移动*/ if(strcmp(x,p->name)==0) {printf("查询信息:\t学号:%d姓名:%s性别:%s班级:%s专业:%s籍贯:%s\n",p->num,p->name,p->sex,p->cla,p->pro,p->adress); } else printf("Notfound."); } STD*delnode(structnode*head,c