




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选学习资料 - - - 欢迎下载运算机科学与技术学院试验课程归档材料规范试验报告一试验课名称:数据结构与程序设计试验试验名称: 本科生导师制问题试验类型: 设计型试验班级:学号:姓名:时间:一.问题描述在高校的教学改革中, 有许多学校实行了本科生导师制;一个班级的同学被分给几个老师, 每个老师带 n 个同学, 假如该老师仍带讨论生, 那么讨论生也可直接带本科生;本科生导师制问题中的数据元素具有如下形式:导师带讨论生(老师,(讨论生 1,(本科生 1,本科生 m1),(讨论生 2,(本科生 1,本科生 m2)导师不带讨论生(老师,(本科生 1,本科生 m)导师的自然情形只包括姓名.职称;讨论生
2、的自然情形只包括姓名.班级;本科生的自然情形只包括姓名.班级;二. 数据结构设计本试验使用的数据结构为广义表,广义表采纳头尾链表储备结构来实现;定义老师.同学结点结构体如下:typedef struct glnodechar name100;/* 老师或同学的姓名 */char prof100;/* 老师结点表示职称,同学结点表示班级*/ int type;/* 结点类型: 0-老师, 1-讨论生, 2-本科生 */struct struct glnode *hp、 *tp; ptr;/*hp 指向同级的下一结点, tp 指向下级的首结点 */glist;人员信息的表示形式为:高老师-教授-0
3、.李刚 -二班-1.李明 -二班-2.人员信息中的姓名.职称.班级.人员类型用“-”隔开,如高老师 -教授-0, “高老师”表示姓名, “老师”表示职称, “ 0”表示人员的类型为老师;李刚- 二班-1,“李刚”表示姓名, “二班”表示班级, “1”表示人员的类型为讨论生; 李明-二班-2,“李明”表示姓名, “二班”表示班级, “ 2”表示人员的类型为本 科生;广义表(高老师 -教授-0,(李明 -一班-2,王平-二班-2),(李老师 -副教授 -0,(白梅 -二班-1,(李刚 -一班-2)可以用图 3 表示;精品学习资料精选学习资料 - - - 欢迎下载高老师教授0李明一班2王平二班2李老
4、师副教授0白梅二班1李刚一班2精品学习资料精选学习资料 - - - 欢迎下载图 3 导师制用广义表实现示例三.算法设计建立:建立导师广义表;glist initglist glist l = null、 *l; glist e;e = initglnode"teacherli"、 "fujiaoshou"、 0; insertfirst_gl&l、 e;e = initglnode"teachergao"、 "jiaoshou"、 0; insertfirst_gl&l、 e;l = &l-
5、>ptr.tp;e = initglnode"wangping"、 "erban"、 2; insertfirst_gll、 e;e = initglnode"liming"、 "yiban"、 2; insertfirst_gll、 e;l = &l->ptr.hp->ptr.tp;e = initglnode"baimei"、 "erban"、 1; insertfirst_gll、 e;l = &*l->ptr.tp;e = in
6、itglnode"ligang"、 "yiban"、 2; insertfirst_gll、 e;return l;插入:将某位本科生或讨论生插入到广义表的相应位置;int insertfirst_glglist *l、 glnode *e e->ptr.hp = *l;*l = e; return 1;删除:将某本科生或讨论生从广义表中删除;glist deleteglnodeglist *l、 char *name glist *l = l、 *p、 temp;iflif.strcmp*l->name、 name temp = *l;精品
7、学习资料精选学习资料 - - - 欢迎下载*l = *l->ptr.hp; return temp;if*l->ptr.tpp = &*l->ptr.tp;temp = deleteglnodep、 name; iftemp return temp;if*l->ptr.hpp = &*l->ptr.hp;temp = deleteglnodep、 name; iftemp return temp;elsereturn null;查询:查询导师.本科生(讨论生)的情形;glist travglistglist l、 char *name glist
8、l;whilel.=nullif.strcmpl->name、name return l;l = travglistl->ptr.tp、 name; ifl return l;l = l->ptr.hp;return null;统计:某导师带了多少个讨论生和本科生;int countstudglist l、 int *i、 int *j iflifl->type = 1 *i+;else ifl->type = 2*j+;else;countstudl->ptr.tp、 i、 j;countstudl->ptr.hp、 i、 j;return 1;输出:将某导师所带同学情形输出;void printglnodeglnode *e精品学习资料精选学习资料 - - - 欢迎下载ife=null return;printf"%s-%s-%d"、 e->name、 e->prof、 e->type;打印:将广义表整个输出;void printglistglist l ifl=null return; printf"" whilel.=null printglnodel; printglistl->ptr.tp; printf" "l = l->ptr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物流园区安全管理制度手册
- 2025年中考数学二轮复习讲练测第07讲 三角形的综合问题(8个考点8个题型)-浙江二轮讲练测(解析版)
- 自我介绍快闪-31
- 度江苏省徐州市东苑中学2024-2025学年度八年级3月月考历史试题(含答案)
- 2025年水电安装合同示例
- 2025年电梯广告投放合同
- 2025网约车平台服务合同范本
- 门窗店铺租赁合同协议
- 2025正式员工聘用合同协议
- 青少年教育合作合同协议
- 分期还款协议书模板示例
- 幼升小公有住宅租赁合同(2篇)
- 彩票大数据预测分析
- (完整)老旧小区改造施工组织设计
- 2024-2030年中国科技服务行业发展前景及投资策略分析研究报告
- 《城市轨道交通》课件
- 建筑工程材料取样送检一览表
- 婚姻家庭继承法期末考试复习题及参考答案
- 2024年四川省成都市中考数学试卷(含解析)
- 项目全周期现金流管理培训课件
- 小学群众满意度调查测评表
评论
0/150
提交评论