




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.宿舍管理查询软件1)任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:A.采用交互工作方式B.建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)2)查询菜单: (用二分查找实现以下操作)A.按姓名查询 B.按学号查询 C.按房号查询3)打印任一查询结果(可以连续操作)#include #define NULL 0 #define TYPE struct student #define LEN sizeof(struct student) typedef struct student float num; int room_num; char name; struct student *next; ; struct room int room_number; int count; room4=101,0,102,0,201,0,201,0; /* 创建一个含 n 个节点的链表 */ TYPE * creatlink(int n) int i; TYPE *head,*pf,*pb; head=(TYPE*)malloc(sizeof(TYPE); head-next=NULL; pf=head; pb=head; for(i=0;inext=NULL; printf(请输入学生的相关信息:n); printf(学号:); scanf(%d,&pf-num); printf(姓名:); scanf(%s,&pf-name); printf(房间号:); scanf(%s,&pf-room_num); pf-room_num=(roomi/8.room_number); roomi/8.count+; pb-next=pf; pb=pf; return(head); TYPE * creatlink(int n); TYPE * deletelink(TYPE * head,int num); TYPE * insertlink(TYPE * head,TYPE * pi); void printlink(TYPE * head); void destroylink( TYPE * head ); void main(void) TYPE *head=NULL,*pnum=NULL; int n=1,num; int x; int cord; printf(n 主菜单 n); printf( 1 学生入住 n); printf( 2 学生退房 n); printf( 3 学生插房 n); printf( 4 查询学生信息 n); printf( 0 结束程序运行 n); printf(-n); printf( 请输入您的选择(1, 2, 3, 4,0) ); scanf(%d,&cord); /* 创建一个含 n 个节点的链表 */ switch(cord) case 1: printf(请输入要入住的房间:); scanf(%d,&x); head=creatlink(n); return main() ; break; /* 删除链表中值为 num 的节点 */ case 2: printf(请输入要办理退房手续学生的学号:); scanf(%f,&num); head=deletelink(head,num); printlink(head); return main(); break; /* 在链表中插入一个节点 */ case 3: printf(迟到学生插房n); pnum=(TYPE *)malloc(LEN); if(pnum=NULL) printf(没有学生入住); printf(请输入要插房学生的学号:); scanf(%f,&pnum-num); printf(请输入要插房学生的姓名:); scanf(%s,&pnum-name); head=insertlink(head,pnum); return main(); break; case 4: printlink(head); ; break; case 0: exit(0); break; /* 删除链表中值为 num 的节点 */ TYPE * deletelink(TYPE * head,int num) TYPE *pf, *pb; if(head=NULL) printf(n没有学生入住!n); return NULL; pb=head; while (pb-num!=num & pb-next!=NULL) pf=pb; pb=pb-next; if(pb-num=num) if(pb=head) head=pb-next; else pf-next=pb-next; free(pb); printf(已经成功办理退房手续n); else printf(没有该学生!n); return head; /* 在链表中插入一个节点 */ TYPE * insertlink(TYPE * head,TYPE * pi) TYPE *pb, *pf; pb=head; if(head=NULL) head=pi; pi-next=NULL; else while(pi-num pb-num)&(pb-next!=NULL) pf=pb; pb=pb-next; if(pi-num num) if(head=pb) head=pi; else pf-next=pi; pi-next=pb; else pb-next=pi; pi-next=NULL; return head; /* 打印链表中各节点信息 */ void printlink(TYPE * head) int num; TYPE *pf; pf=head; while(pf-num!=num)&(pf-next!=NULL) pf=pf-next; if(pf-num=num) printf(该学生的信息为:n); printf(学号:%fn姓名:%snnroom_num:%dn,pf-num,pf-name,pf-room_num); else pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车辆质押贷款及汽车租赁及保养服务合同
- 产权式酒店租赁合同示范文本及经营风险控制
- 医疗健康园区场站委托运营管理协议
- 产业园区场地租赁合同行政备案及产业扶持政策
- 餐饮企业特色餐厅承包经营合同范本
- 茶叶原料种植基地合作合同样本
- 柴油市场拓展与销售奖励合同范本
- 草场租赁与水资源保护与利用协议
- 税务筹划与财务代理一体化服务合同
- 金融投资代理居间业务合同
- 孕期保健主题宣教培训课件
- 《高血压健康教育规范》
- 骨科手术后的康复用具与辅助器具
- 小学特色课程《口风琴课程》校本教材
- 电脑教室搬迁方案
- 《如何写文献综述》课件
- 汽车美容店计划书案例
- 2023高教版中职中国特色社会主义基础模块课程标准
- 信息机房火灾事故应急处置方案
- 火灾调查专业技能.全国比武单项科目解析
- 抑郁症健康教育
评论
0/150
提交评论