单链表操作文档格式.docx

上传人:b****6 文档编号:19035632 上传时间:2023-01-03 格式:DOCX 页数:7 大小:15.38KB
下载 相关 举报
单链表操作文档格式.docx_第1页
第1页 / 共7页
单链表操作文档格式.docx_第2页
第2页 / 共7页
单链表操作文档格式.docx_第3页
第3页 / 共7页
单链表操作文档格式.docx_第4页
第4页 / 共7页
单链表操作文档格式.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

单链表操作文档格式.docx

《单链表操作文档格式.docx》由会员分享,可在线阅读,更多相关《单链表操作文档格式.docx(7页珍藏版)》请在冰豆网上搜索。

单链表操作文档格式.docx

stdio.h>

malloc.h>

typedefstruct

{

intchengji[3];

intnum;

}students;

typedefstructNode

studentsS;

structNode*next;

}LNode,*LinkList;

LinkListInitList()//生成一个带有头节点的空单链表

{

LinkListM;

M=(LNode*)malloc(sizeof(LNode));

M->

next=NULL;

returnM;

}

LinkListCreat(LinkListM,inti)//链表初始化

{

intj,l;

LNode*N,*P;

P=M;

for(j=0;

j<

i;

j++)

{N=(LNode*)malloc(sizeof(LNode));

N->

printf("

输入第%d个学生的学号:

"

j+1);

scanf("

%d"

&

N->

S.num);

输入第%d个学生的成绩:

for(l=0;

l<

3;

l++)

scanf("

S.chengji[l]);

P->

next=N;

P=N;

}

PrintLNode(LinkListM)//输出链表

intj;

LNode*P;

printf("

全部学生的信息为:

\n"

);

while(P->

next!

=NULL)

{

P=P->

next;

%d"

P->

for(j=0;

printf("

S.chengji[j]);

intpankong(LinkListM)//判断链表是否为空

if(M->

next==NULL)

表为空!

return0;

else

表非空!

return1;

intLENGTH(LinkListM)//求链表的长度

intlength=0;

length++;

returnlength;

}

LinkListInsertNode(LinkListM,intj)//在链表中插入一个节点

{

LNode*P,*Q=M,*N=M;

inti;

P=(LNode*)malloc(sizeof(LNode));

S.num=j;

请分别输入您要插入的学生的成绩信息"

for(i=0;

i<

i++)

P->

S.chengji[i]);

if(Q->

Q->

next=P;

else

while(Q->

next->

S.num<

S.num&

&

Q->

Q=Q->

if(Q->

{

P->

next=Q->

Q->

}

next==NULL)

P->

intDeleteLNode(LinkListM,into)//删除链表中的某个节点

LNode*Q=M,*P;

next==NULL)return0;

S.num!

=o&

Q=Q->

S.num==o)

P=Q->

return2;

searchLNode(LinkListM,inth)//查找某个同学的成绩

LNode*P=M,*Q;

Q=(LNode*)malloc(sizeof(LNode));

=h&

if(P->

您要查找的学号为%d的学生的成绩为:

h);

您查找的学生不存在!

 

voidmain()

inti,length,k,j,o,l,h;

M=InitList();

输入学生的个数:

scanf("

i);

M=Creat(M,i);

k=pankong(M);

if(k)PrintLNode(M);

length=LENGTH(M);

表长为:

%d\n"

length);

请输入您要插入的学生的学号:

j);

M=InsertNode(M,j);

length++;

PrintLNode(M);

请输入您要删除的学生的学号:

o);

l=DeleteLNode(M,o);

if(l==0)printf("

表为空,请确认!

if(l==1)

删除成功!

if(l==2)printf("

您要删除的学生不存在,请确认!

请输入您要查找的学生的学号:

h);

searchLNode(M,h);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1