数学与计算科学学院实验报告实验项目名称线性表的链式表示和实现所属课程名称数据结构 A 实验类型验证型实验日期 2011 年 4月 21日班级信号二班学号 200956110304 姓名刘谦成绩 1 一、实验概述: 【实验目的】掌握单链表的基本操作在链式存储结构上的实现。【实验原理】线性表的链式结构是动态存储结构,结点的值域指向其直接后继结点。线性链表存储结构,整个链表的存取必须从头指针开始进行,头指针指示链表中第一个结点的存储位置。【实验环境】 Visual C++ 二、实验内容: 【实验方案】在生成线性表时,在键盘上读入元素,用链式存储结构实现存储。【实验过程】(实验步骤、记录、数据、分析) Visual C++ 软件界面。 C++ source file 。 ,编写主函数。 。 ,如, missing ')' before '&' 。在&前添加; e没有正确定义,在函数中加入一条定义语句。 ,输入数据。 2 【实验结论】(结果) 【实验小结】(收获体会) 了解了线性表的链式表示和实现,更加深刻的认识到线性链表的结构特点。进一步掌握了主函数的编写。三、指导教师评语及成绩: 评语评语等级优良中及格不及格 1. 实验报告按时完成, 字迹清楚, 文字叙述流畅, 逻辑性强 2. 实验方案设计合理 3. 实验过程( 实验步骤详细, 记录完整, 数据合理, 分析透彻) 4 : 指导教师签名: 批阅日期: 附录 1 :源程序#include<> #include<> #define TRUE 1 #define FALSE 0 #define OK1 #define ERROR 0 #define INFEASIBLE -1 3 #define OVERFLOW -2 typedef int ElemType; typedef int Status; #define LIST_INIT_SIZE 5 #define LISTINCREMENT 2 typedef struct LNode{ ElemType data; struct LNode *next; }LNode, *LinkList; Status GetElem_L(LinkList L,int i,ElemType &e){ int j; LNode *p; p=L->next;j=1; while(p&&j<i){ p=p->next;++j; }if(!p||j>i)return ERROR; e=p->data; return OK; }//GetElem_L Status ListInsert_L(LinkList &L,int i,ElemType e){ int j; LNode *p,*s; p=L;j=0; while(p&&j<i-1){p=p->next;++j;} if(!p||j>i-1)return ERROR; s=(LinkList)malloc(sizeof(LNode)); s->data=e;s->next=p->next; p->next=s; return OK; }//ListInsert_L Status ListDelet
数据结构——线性表的链式表示和实现 来自淘豆网m.daumloan.com转载请标明出处.