- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构 链式结构
源程序:
#includestdio.h
#includestdlib.h
#includemath.h
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode;
LNode *L;
LNode *creat_L();
void out_L(LNode *L);
void insert_L(LNode *L,int i,ElemType e);
ElemType delete_L(LNode*L,int i);
int locat_L(LNode *L,ElemType e);
void main()
{
int i,k,loc;
ElemType e,x;
char ch;
do{printf(\n);
printf(\n 1.建立线性表);
printf(\n 2.插入元素);
printf(\n 3.删除元素);
printf(\n 4.查找元素);
printf(\n 0.结束程序运行);
printf(\n ======================);
printf(\n 请输入您的选择(1,2,3,4,0));
scanf(%d,k);
switch(k)
{ case 1:{L=creat_L();
out_L(L);
}break;
case 2:{printf(\n 请输入插入位置: );
scanf(%d,i);
printf(\n请输入要插入的元素值:);
scanf(%d,e);
insert_L(L,i,e);
out_L(L);
}break;
case 3:{printf(\n请输入要删除元素的位置:);
scanf(%d,i);
x=delete_L(L,i);
out_L(L);
if(x!=-1)
{
printf(\n删除的元素为:%d\n,x);
printf(删除%d后的单链表为:\n,x);
out_L(L);
}
else printf(\n要删除的元素不存在!);
}break;
case 4:{printf(\n请输入要查找的元素值:);
scanf(%d,e);
loc=locat_L(L,e);
if(loc==-1)printf(\n未找到指定元素!);
else printf(\n已找到,元素位置是%d,loc);
}break;
}
printf(\n ----------------------);
}while(k=1k5);
printf(\n 按回车键,返回...\n);
ch=getchar();
}
LNode *creat_L()
{
LNode *h,*p,*s; ElemType x;
h=(LNode * )malloc(sizeof(LNode));
h-next=NULL;
p=h;
printf(\n请输入第一个数据元素:);
scanf(%d,x);
while(x!=-999)
{
s=(LNode * )malloc(sizeof(LNode));
s-data=x; s-next=NULL;
p-next=s; p=s;
printf(请输入下一个数据:(输入-999表示结束。));
scanf(%d,x);
}
return(h);
}
void out_L(LNode *L)
{
LNode *p;
p=L-next; printf(\n\n);
while(p!=NULL)
{
printf(%5d,p-data);p=p-next;
};
}
void insert_L(LNode *L,int i,ElemType e)
{
LNode *s,*p;
int j;
p=L;
j=0;
while(p!=NULLj=i-1){p=p-next;j++;}
if(p==NULL||i1)printf(\n插入位置错误!);
else{s=(LNode * )malloc(sizeof(LNode));
s-data=e;
s-next=p-next;
p-next=s;
}
}
ElemType delete_L(LNode *L,int i)
{LNode *p,*q;int j;ElemTyp
您可能关注的文档
最近下载
- GB∕T 37903-2019 数控压力机可靠性评定方法.pdf
- SL 274-2020 碾压式土石坝设计规范.docx
- 《植物生产与环境》课程标准.pdf VIP
- 《植物生产与环境》课程标准.pdf
- bosch博世 GBH 5-38 X GBH 5-38 D 使用说明书.pdf
- 最新版入团志愿书模板.pdf
- 职业技术学院园林技术专业《植物生产环境》课程标准 .pdf VIP
- 国内某600MW机组双烟道直流炉省煤器旁路特性研究.pdf VIP
- 《中医基础理论》课件——津液的代谢和生理功能.pptx VIP
- 8 推翻帝制 民族觉醒 第一课时说课稿 -2023-2024学年道德与法治五年级下册统编版.docx
文档评论(0)