c++程序设计实验十new

c++程序设计实验十new

ID:19621311

大小:67.00 KB

页数:9页

时间:2018-10-04

c++程序设计实验十new_第1页
c++程序设计实验十new_第2页
c++程序设计实验十new_第3页
c++程序设计实验十new_第4页
c++程序设计实验十new_第5页
资源描述:

《c++程序设计实验十new》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验十1.实验目的(1)理解链表的概念及使用链表的优点。(2)学会链表的建立、查询、输出、删除、排序等操作。(3)初步学会用链表处理职工工资等实际问题。2.实验要求(1)编写实验程序;(2)在VC++运行环境中,输入源程序;(3)编译运行源程序;(4)输入测试数据进行程序测试;(5)写出运行结果。3.实验内容(1)建立一个描述职工工资的无序链表,各结点内容如表8.4所示。计算出各职工的实发工资,并输出链表中各职工结点的内容。最后删除链表,回收链表占用空间。建立无序链表、计算实发工资(实发工资=应发工资-税金)

2、、输出链表、删除链表各用一个函数实现。在主函数中调用四个函数完成上述操作。表8.4职工工资表no(工号)name[8](姓名)dsalary(应发工资)tax(税金)fsalary(实发工资)1001Zhang1900851002Wang1800801003Li1700701004Zhou200090(2)在实验(1)的基础上,再编写能删除指定工号结点的函数,能在指定工号结点前插入新职工结点的函数。在主函数中输入要删除与插入结点的工号,并调用删除与插入函数删除与插入指定结点。插入新职工的信息在插入函数内输入。

3、(3)建立一个描述职工工资的有序链表,各结点内容如表8.4所示,输入职工信息时自动计算实发工资,链表按实发工资升序排列。输出有序链表各结点内容,最后删除链表。4.解答参考(1)#include#includestructemployee{intno;charname[8];floatsalary,tax;floatfsalary;node*next;};node*Create(void){intno;//定义输入职工工号的临时变量nonode*head,*pn,*p

4、t;//定义链表头指针、新结点指针、尾指针head、pn、pt。head=0;//链表头指针赋0,表示链表为空。cout<<"产生无序链表,请输入工号、姓名、应发工资、税金,以工号为-1结束:"<>no;//输入职工工号while(no!=-1)//工号为-1时结束输入{pn=newnode;//动态分配新结点内存空间,并将结点地址赋给pn。pn->no=no;//将职工工号输入新结点cin>>pn->name;//职工姓名输入新结点cin>>pn->salary;//应发工资输入新结点c

5、in>>pn->tax;//税金输入新结点if(head==0)//若链表为空{head=pn;//则将新结点地址由pn赋给头指针head与尾指针ptpt=pn;//使新结点加入到链首}else//否则链表非空{pt->next=pn;//将新结点地址由pn赋给链尾的next指针与尾指针ptpt=pn;//使新结点加入到链尾}cin>>no;//输入职工工号}pt->next=0;//链尾指针变量赋0return(head);//返回链表的头指针}voidCalcu(node*head){node*p;p=h

6、ead;while(p!=0){p->fsalary=p->salary-p->tax;p=p->next;}}voidPrint(constnode*head){constnode*p;p=head;cout<<"输出链表中各结点值:"<no<<'t'<name<<'t'<salary<<'t'<tax<<'t'<fsalary<<'t'<next;}}voidDelchain(node*h

7、ead){node*p;p=head;//链表头指针赋给pwhile(head)//当链表非空时删除结点{head=p->next;//将链表下一个结点指针赋给headdeletep;//删除链表第一个结点p=head;//再将头指针赋给p}}voidmain(void)//主函数{node*head;head=Create();//产生无序链表Calcu(head);Print(head);//输出无序链表Delchain(head);//删除整个链表}程序运行结果:产生无序链表,请输入工号、姓名、应发工资

8、,税金,以工号为-1结束:1001zhang1900851002wang1800801003li1700701004zhou200090-1输出链表中各结点值:1001zhang19008518151002wang18008017201003li17007016551004zhou2000901910(2)#include#includestructnod

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

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

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