欢迎来到天天文库
浏览记录
ID:66589683
大小:224.83 KB
页数:10页
时间:2021-12-31
《实验二链表操作实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、标准文档实验二链表操作实现实验日期:2017年3月16日实验目的及要求1.熟练掌握线性表的基本操作在链式存储上的实现;2.以线性表的各种操作(建立、插入、删除、遍历等)的实现为重点;3.掌握线性表的链式存储结构的定义和基本操作的实现;4.通过本实验加深对C语言的使用(特别是函数的参数调用、指针类型的应用)。实验内容已知程序文件linklist.cpp已给出学生身高信息链表的类型定义和基本运算函数定义。(1)链表类型定义typedefstruct{intxh;/*学号*/floatsg;/*身高*/int
2、sex;/*性别,0为男生,1为女生*/}datatype;typedefstructnode{datatypedata;/*数据域*/structnode*next;/*指针域*/}LinkNode,*LinkList;(2)带头结点的单链表的基本运算函数原型LinkListinitList();/*置一个空表(带头结点)*/voidcreateList_1(LinkListhead);/*创建单链表*/voidcreateList_2(LinkListhead);/*创建单链表*/voidsort_
3、xh(LinkListhead);/*单链表排序*/voidreverse(LinkListhead);/*对单链表进行结点倒置*/voidError(char*s);/*自定义错误处理函数*/voidpntList(LinkListhead);/*打印单链表*/voidsave(LinkListhead,charstrname[]);/*保存单链表到文件*/实用大全标准文档任务一创建程序文件linklist.cpp,其代码如下所示,理解LinkList类型和基本运算函数后回答下列问题。#include
4、#include/*单链表结点类型*/typedefstruct{intxh;/*学号*/floatsg;/*身高*/intsex;/*性别,0为男生,1为女生*/}datatype;typedefstructnode{datatypedata;/*数据域*/structnode*next;/*指针域*/}LinkNode,*LinkList;/*带表头的单链表的基本运算函数*/LinkListinitList();/*置一个空表(带头结点)*/voidcreate
5、List_1(LinkListhead);/*创建单链表*/voidcreateList_2(LinkListhead);/*创建单链表*/voidsort_xh(LinkListhead);/*单链表排序*/voidreverse(LinkListhead);/*单链表倒置*/voidError(char*s);/*自定义错误处理函数*/voidpntList(LinkListhead);/*打印单链表*/voidsave(LinkListhead,charstrname[]);/*保存单链表到文件*
6、//*置一个空表*/LinkListinitList(){LinkListp;p=(LinkList)malloc(sizeof(LinkNode));p->next=NULL;returnp;}/*创建单链表*/voidcreateList_1(LinkListhead){FILE*fp;intxh;floatsg;intsex;LinkListp;if((fp=fopen("records.txt","r"))==NULL){Error("cannotopenfile!");return;实用大全标
7、准文档}while(!feof(fp)){fscanf(fp,"%d%f%d",&xh,&sg,&sex);p=(LinkList)malloc(sizeof(LinkNode));p->data.xh=xh;p->data.sg=sg;p->data.sex=sex;p->next=head->next;head->next=p;}fclose(fp);}/*创建单链表*/voidcreateList_2(LinkListhead){FILE*fp;intxh;floatsg;intsex;LinkL
8、istp,rear;if((fp=fopen("records.txt","r"))==NULL){Error("cannotopenfile!");return;}rear=head;while(!feof(fp)){fscanf(fp,"%d%f%d",&xh,&sg,&sex);p=(LinkList)malloc(sizeof(LinkNode));p->data.xh=xh;p->data.sg=sg;p->data.sex=se
此文档下载收益归作者所有