




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
已知学生基本信息由学号(长整型)、姓名(字符数组)、性别(字符型)、年龄(整型)组成。定义如下结构类型:/ 定义结构体:存储学生基本信息struct STUDENT_NODE long int id;char nameMAX_LEN;char sex;int age; / 指针指向下一个结点,用以形成链表STUDENT_NODE *next;/定义结构体:存储单向链表struct STUDENT_LINKSTUDENT_NODE *top;应用上述结构类型,编程实现:建立一个结点按学号顺序存储学生信息的单向链表,并实现依据学号对链表的添加、修改、删除和检索功能;添加新结点后,应继续保持结点按学号顺序的链接方式。分别定义函数实现链表的初始化、链表的打印输出、以及在链表中添加、修改、删除和检索节点的功能;最后在main()中进行测试输出。提示:定义函数实现链表的初始化、链表的打印输出、以及在链表中添加、修改、删除和检索节点的功能void iniStudentLink(STUDENT_LINK * L); /初始化学生链表void clearStudentLink(STUDENT_LINK * L); /清空学生链表int isExist(STUDENT_LINK * L, long int id); / 判断该学号的学生信息是否存在int Add(STUDENT_LINK * L,long int id,char name,char sex, int age); /添加一个新同学的信息 int Modify(STUDENT_LINK * L, long int id,char name,char sex, int age); / 根据学号,修改该同学的信息int Delete(STUDENT_LINK * L, long int id); / 根据学号,从链表中删除该同学的信息int Search(STUDENT_LINK * L,long int id); / 根据学号,输出显示该同学信息void ShowALL(STUDENT_LINK * L); / 从头到尾,输出当前所有的同学信息答案:源代码如下void main()STUDENT_LINK* tjut;tjut=new STUDENT_LINK;iniStudentLink(tjut);Add(tjut,2007002,Tom,M,19);Add(tjut,2007007,Jack,M,20);Add(tjut,2007004,Mary,F,20);ShowALL(tjut);Modify(tjut,2007002,Tom Smith,M,19);Search(tjut,2007002);Delete(tjut,2007004);ShowALL(tjut);clearStudentLink(tjut);delete tjut;/*初始化学生链表*/void iniStudentLink(STUDENT_LINK * L)L-top=new STUDENT_NODE; /top结点是个内容为空的结点,注意其作用L-top-id=0;L-top-next=NULL;/*清空学生链表*/void clearStudentLink(STUDENT_LINK * L)STUDENT_NODE *ptr;while(L-top != NULL) ptr=L-top;L-top=L-top-next;delete ptr;return;/* 判断该学号的学生信息是否存在: 存在返回1,不存在返回0*/int isExist(STUDENT_LINK * L,long int id)int exist;STUDENT_NODE *ptr;exist=0;ptr=L-top;while(ptr!=NULL)if(id=ptr-id) /此学生信息已存在exist=1;break;ptr=ptr-next;return exist;/* 添加一个新同学的信息*/int Add(STUDENT_LINK * L, long int id,char name,char sex, int age)int error;int exist;STUDENT_NODE *ptr;STUDENT_NODE *node;error=0;exist=isExist(L,id);if(exist=1)error=1;coutError! 错误添加:id = id 此学生信息已存在!top;while(ptr-next!=NULL)&(ptr-next-idnext;node=new STUDENT_NODE;node-id=id;strcpy(node-name,name);node-sex=sex;node-age=age; /新结点插入到ptr结点之后node-next=ptr-next;ptr-next=node;cout添加:id = id 学生信息成功 !endl;return error;/ 根据学号,修改该同学的信息int Modify(STUDENT_LINK * L,long int id,char name,char sex, int age)int error;int exist;STUDENT_NODE *ptr;error=0;exist=isExist(L,id);if(exist=0)error=1;coutError! 错误修改:id = id 此学生信息不存在!top;while(ptr!=NULL)&(ptr-id!=id)ptr=ptr-next;/ 修改ptr中的信息strcpy(ptr-name,name);ptr-sex=sex;ptr-age=age; cout修改:id = id 学生信息成功 !endl;return error;/ 根据学号,从链表中删除该同学的信息int Delete(STUDENT_LINK * L,long int id)int error;int exist;STUDENT_NODE *ptr;STUDENT_NODE *node;error=0;exist=isExist(L,id);if(exist=0)error=1;coutError! 错误删除:id = id 此学生信息不存在!top;while(ptr-next!=NULL)&(ptr-next-id!=id)ptr=ptr-next;/结点ptr-next就是要删除的结点node=ptr-next;ptr-next=ptr-next-next;delete node;cout删除:id = id 学生信息成功 !endl;return error; / 根据学号,输出显示该同学信息int Search(STUDENT_LINK * L,long int id)int error;int exist;STUDENT_NODE *ptr;error=0;exist=isExist(L,id);if(exist=0)error=1;coutError! 错误显示:id = id 此学生信息不存在!top;while(ptr!=NULL)&(ptr-id!=id)ptr=ptr-next;/ 结点ptr中就是要找的结点的信息cout显示:id = id 学生信息:endl;coutid : idendl;coutname : nameendl;coutsex : sexendl;coutage : ageendl; cout显示:id = id 学生信息成功 !endl;return error;/ 从头到尾,输出当前所有的同学信息 void ShowALL(STUDENT_LINK * L)int k;STUDENT_NODE *ptr;coutnn*目前所有学生信息*top-n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省成安县2025年上半年公开招聘城市协管员试题含答案分析
- 2025年度网络直播平台虚拟礼物充值合作协议
- 2025年汽车行业车辆安全检测服务合同样本
- 2025年度航空航天测试加工服务合同签订细则
- 2025版货运司机安全押金担保合同书
- 2025版现代服务业商铺分租管理协议
- 2025年私车公用车辆维修保养与保险协议书
- 2025版机械设备借出及操作培训合同
- 2025版体育产业赛事运营委托合同
- 贵州省望谟县2025年上半年公开招聘村务工作者试题含答案分析
- 猪场员工安全培训课件
- 颅内感染解读
- (高清版)DB31∕T 1550-2025 动物无害化处理场所生物安全技术规范
- 2025至2030中国农资连锁超市行业发展趋势分析与未来投资战略咨询研究报告
- QGDW11447-202410kV-500kV输变电设备交接试验规程
- 肺栓塞的中医护理
- 2024第41届全国中学生物理竞赛预赛试题(含答案)
- 诊所护士劳动合同协议
- 支气管炎护理
- TCAICI39-2022《通信光缆附挂供电杆路技术规范》
- 【基于多元线性回归模型的国有商业银行不良贷款影响因素实证研究12000字(论文)】
评论
0/150
提交评论