34生医091张园

34生医091张园

ID:40525820

大小:76.50 KB

页数:9页

时间:2019-08-04

34生医091张园_第1页
34生医091张园_第2页
34生医091张园_第3页
34生医091张园_第4页
34生医091张园_第5页
资源描述:

《34生医091张园》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、编号:34河北工业大学计算机软件技术基础(VC)课程设计报告学院电气与自动化班级生医091姓名张园__学号090853____成绩______一、题目:利用单向链表实现简单的学生信息管理(34)二、设计思路1、总体设计用主函数调用四个被调用函数分别实现学生信息的链表创建、结点的插入、结点的删除、显示学生信息。1)分析程序的功能用单向链表保存学生的各项信息,如学号、姓名、成绩等,并完成学生信息的插入、删除及学生信息显示的功能。2)系统总体结构:设计程序的组成模块,简述各模块功能。①主函数,用来调用四个被调函数;②creatlist函数,用来创建链表;③insert函数,用来插入

2、结点;④del函数,用来删除结点;⑤output函数,用来输出学生信息。2、各功能模块的设计:说明各功能模块的实现方法①主函数,用switch来提供菜单选项,实现对被调函数的循环调用。②插入函数,用new操作符开辟新的存储空间用来存放新的结点,然后找到与学号对应的结点,将新结点插入其后(三种情况)。③删除函数,先输入某个学号,然后找到与其相对应的结点,将其在链表中删除。④显示函数,将表头指针变量作为函数参数传给output函数,然后通过p->next找到下一个结点,就可以依次输出链表中的全部结点数据。⑤结束程序,用delete将存储空间释放掉。3、设计中的主要困难及解决方案在

3、这部分论述设计中遇到的主要困难及解决方案。1)困难1如何提供菜单选项?用switch实现了对被调函数的循环调用。2)困难2创新时无法在所有的文件中同时使用一个n,使用extern解决。4、你所设计的程序最终完成的功能1)说明你编制的程序能完成的功能利用单向链表完成学生信息的保存,学生信息的插入,学生信息的删除,学生信息按学号顺序显示等功能。第9页/共9页编号:342)准备的测试数据及运行结果准备测试数据:学号姓名成绩98023Lili8598044Wangtao6999674Zhangxiaobao7299812liulifang91插入:98120zhangli75删除:9

4、8044运行结果:请输入学号:98023请输入姓名:lili请输入成绩:85请输入学号:98044请输入姓名:wangtao请输入成绩:69请输入学号:99674请输入姓名:zhangxiaobao请输入成绩:72请输入学号:99812请输入姓名:liulifang请输入成绩:91请输入学号:0请输入您要选择的功能序号:1:插入新学生信息,请选择:12:删除学生信息,请选择:23:显示学生信息,请选择:34:结束程序,请选择:41请输入学号:98120请输入姓名:zhangli请输入成绩:75请输入您要选择的功能序号:1:插入新学生信息,请选择:12:删除学生信息,请选择:2

5、3:显示学生信息,请选择:34:结束程序,请选择:42请输入要删除的学生学号:98044Delete:98044请输入您要选择的功能序号:1:插入新学生信息,请选择:12:删除学生信息,请选择:23:显示学生信息,请选择:3第9页/共9页编号:344:结束程序,请选择:43These4recordsare:98023lili8598120zhangli7599764zhangxiaobao7299812liulifang91请输入您要选择的功能序号:1:插入新学生信息,请选择:12:删除学生信息,请选择:23:显示学生信息,请选择:34:结束程序,请选择:44Pressany

6、keytocontinue三、程序清单程序中包含1.cpp,2.cpp,3.cpp,4.cpp,5.h,6.cpp1、1.cpp#includestructstudent//用结构体描述链表节点数据{intnum;charname[20];doublescore;student*next;};externintn;//n为学生的个数student*creatlist()//creatlist函数定义,创建列表{student*head;//表头指针student*p1;//p1指向新建结点student*p2;//p2指向表尾结点n=0;//n为结点个

7、数,初值为0head=NULL;//在没有创建任何结点时,表头指向空p1=new(student);//创建一个新结点p1p2=p1;//表尾p2也指向p1while(1){cout<<"请输入学号:";//输入第一个结点的学生学号cin>>p1->num;if(p1->num==0)//判断链表过程是否结束break;第9页/共9页编号:34cout<<"请输入姓名:";cin>>p1->name;cout<<"请输入成绩:";cin>>p1->score;n++;if(n==1)head=p1;//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。