电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

利用单项链表实现简单的学生信息管理VIP免费

利用单项链表实现简单的学生信息管理_第1页
1/8
利用单项链表实现简单的学生信息管理_第2页
2/8
利用单项链表实现简单的学生信息管理_第3页
3/8
第1页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共8页河北工业大学计算机软件技术基础(VC)课程设计报告一、题目:利用单项链表实现简单的学生信息管理(07)二、设计思路1、总体设计1)分析程序的功能创建单项链表保存学生的各项信息,学号、姓名、成绩。并能够完成学生信息的插入、删除及信息的显示功能。2)系统总体结构:按照程序要求的功能采用结构化的设计思想,划分为五个功能模块,即创建链表、插入函数删除函数、显示函数和主函数。2、各功能模块的设计:说明各功能模块的实现方法①头文件:对自己定义的函数进行函数声明。②主函数:进行函数的调用,实现各函数的功能,达到预期的目的。③函数定义部分:定义各个功能函数,创建链表函数、插入新信息函数、删除信息函数、显示信息函数。3、设计中的主要困难及解决方案1)在插入新信息时,有插入点在表头、中间、表尾三种情况,为此采用讨论的方法,把三种情况进行讨论使其分开进行。2)在删除信息时,有删除的为头结点和中间结点的情况,采用讨论的方法,把两种情况分开来进行。4、你所设计的程序最终完成的功能1)创建链表、插入新信息、删除信息、显示信息。2)测试数据①输入的数据学号姓名成绩98023LiLi8598044WangTao6999764ZhangXiaobao72第2页共8页第1页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共8页99812LiuLifang91②插入的数据学号姓名成绩96085WangLiPing7798120ZhangLi7599912LiuHai80③删除的数据学号姓名成绩99812liulifang91运行结果第3页共8页第2页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共8页三、程序清单本程序包含creatlist.cpp、insert.cpp、del.cpp、output.cpp、main.cpp、头第4页共8页第3页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共8页文件.h六个文件1、creatlist.cpp文件清单#include#include"头文件.h"intn;student*creatlist(){student*head;student*p1;student*p2;n=0;head=NULL;p1=new(student);//创建一个新结点p2=p1;cin>>p1->num>>p1->name>>p1->score;while(p1->num!=0)//链表建立过程结束的判断条件{n++;if(n==1)//将链表中第一个新建结点作为表头head=p1;elsep2->next=p1;//原链表结点指向新建结点p2=p1;p1=new(student);cin>>p1->num>>p1->name>>p1->score;}delete(p1);p2->next=NULL;returnhead;//返回表头}2、insert.cpp文件清单#include#include"头文件.h"student*insert(student*head,student*t){student*p0;//待插入点student*p1;student*p2;//p0插入p1之前,p2之后p1=head;p0=t;if(p1==NULL)//原链表是空表第5页共8页第4页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第5页共8页{head=p0;p0->next=NULL;}else{while((p0->num>p1->num)&&(p1->next!=NULL))//查找待插入点{p2=p1;p1=p1->next;}if(p0->num<=p1->num){if(p1==head)//要插入的位置在表头{head=p0;p0->next=p1;}else//要插入的位置不是表头{p2->next=p0;p0->next=p1;}}else//插入表尾结点之后{p1->next=p0;p0->next=NULL;}}returnhead;//返回表头}3、del.cpp文件清单#include#include"头文件.h"student*del(student*head,intnum){student*p1;student*p2;if(head==NULL)//原链表是空表{cout<<"ListisNULL\n";第6页共8页第5页共8页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第6页共8页returnhead;}p1=head;while((num!=p1->num)&&(p1->next!=NULL))//查找带要删除的结点{p2=p1;p1=p1->next;}if(num==p1->num){if(p1==head)//要删除的是头结点head=p1->next;else//要删除的不是头结点p2->next=p1->next;delete(p1);//释放被删除结点所占的内存空间cout<<"delete:"<#include"头文件.h"voidoutput(student*head){if(head==NULL)//原链表是空表cout<<"listisNULL\n";else{student*p1;p1=hea...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

利用单项链表实现简单的学生信息管理

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部