admin 管理员组

文章数量: 1087139


2024年3月11日发(作者:mysql恢复表数据)

数据结构 实验二:单链表的基本操作

数据结构实验二:单链表的基本操作

实验二:单链表的基本操作

一、【实验目的】

1、理解和掌握单链表的类型定义方法和结点生成方法。2、掌握建立单链表和显示

单链表元素的算法。3、掌握单链表的查找、插入和删除算法二、【实验内容】1、建立

一个整形数的单链表,手动输入10个数,并从屏幕显示单链表元素列表。2、从键盘输

入一个数,查找在以上创建的单链表中是否存在该数;如果存在,显示它的位置;如果不存

在,给出相应提示。3、删除上述单链表中指定位置的元素。

以下就是程序部分代码,恳请调试并补足并使之恰当运转:

1.linlist.h

typedefstructnode{

datatypedata;structnode*next;}slnode;

voidlistinitiate(slnode**head)/*初始化*/{

/*如果有内存空间,申请头结点空间并使头指针head指向头结点

*/if((*head=(slnode*)malloc(sizeof(slnode)))==null)exit(1);(*head)->next=null;/*置

链尾标记null*/}

intlistlength(slnode*head){

slnode*p=head;/*p指向首元结点*/intsize=0;/*size初始为0*/

while(p->next!=null)/*循环计数*/{p=p->next;size++;}

returnsize;}

intlistinsert(slnode*head,inti,datatypex)

/*在带头结点的单链表head的数据元素ai(0≤i≤size)结点前*/

/*填入一个存放数据元素x的结点*/{

slnode*p,*q;intj;

p=head;/*p指向首元结点*/j=-1;/*j起始为-1*/while(p->next!=null&&j

/*最终让指针p指向数据元素ai-1结点*/{p=p->next;j++;}


本文标签: 单链 结点 元素 实验 表中