动态线性表的定义及其运算.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态线性表的定义及其运算

SY-023 实 验 报 告 课程名称: 数据结构 系部名称: 专业班级: 学生姓名: 学 号: 指导教师: 黑龙江工程学院教务处制 实验项目实验一:动态线性表的定义及其运算 实验日期2016.8.28实验地点A507同组人数实验台号一、实验目的 (1)掌握线性表的定义与实现。二、实验仪器设备 计算机三、实验原理 数据结构程序设计基本方法 实现步骤:编写、编译、链接、执行 四、实验内容或步骤 内容: (1)初始化线性表 (2)在线性表中插入元素 (3)删除线性表中的元素 (4)编写主函数实现 2)实验步骤: 1)编写C的源程序如下: #include stdio.h #include stdlib.h #define ElemType int typedef struct node { ElemType data; /*数据域*/ struct node *next; /*指针域*/ }Lnode; void outlin(Lnode *h); /*要与下面的函数说明一致*/ void creat( ); void insert(Lnode *h, ElemType x, ElemType y); void delete(Lnode *h, ElemType x); Lnode *p,*q,*s,*head; main() { int i,x,y,cord; do { printf(\n 主菜单 \n ) ; printf( 1 建立线性表 \n); printf( 2 插入一个元素 \n); printf( 3 删除一个元素 \n); printf( 4 结束程序运行 \n); printf(-----------------------------\n); printf( 请输入您的选择(1, 2, 3, 4) ); scanf(%d,cord); switch (cord) {case 1:{ creat(); outlin(head); } break; case 2:{ printf(\n x,y=?注意用逗号分隔); scanf(%d,%d,x,y); insert(head,x,y); outlin(head); } break; case 3:{ printf(\n x=?); scanf(%d,x); delete(head,x); outlin(head); } break; case 4: exit(0); } /* switch */ } while (cord=4 ); } /* main end */ /* 与前面2.3.2节所讲的单链表建立程序相同,上机逐一将数据打入即可 */ void creat() { ElemType x;Lnode *ptr; head = (Lnode *) malloc (sizeof(Lnode)) ; /*head应为全局变量*/ head-next=NULL ; p=head; /*head为头??点*/ printf(\n x=?);scanf(%d,x); /*输入第一个数据元素*/ while (x!=-999) /*数据为-999结束循环*/ { ptr= (Lnode *) malloc (sizeof(Lnode)) ; ptr-data=x; ptr-next=NULL; p-next=ptr; p=ptr; printf(\n x=?);scanf(%d,x); /* 输入下一个数据元素 */ } } /* creat end */ void outlin( Lnode *h) { p=h-nex

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档