#include<iostream>
using namespace std;
typedef struct lnode
{
int data;
lnode *next;
}lnode,*linklist;
int m;
int listinsert(linklist &l,int i,int e)//在带头节点的单链表中第i个元素插入元素e
{
int j=0;
linklist p,s;
p=new lnode;
p=l;
s=new lnode;
while(p&&j<i-1)
{
p=p->next;
++j;
}
if(!p||j>i-1){return 0;}
s->data=e;
s->next=p->next;
p->next=s;
return 1;
}
int listdelete(linklist &l,int i)//在带头节点的单链表中删除第i个元素e,并返回其值
{
int j=0;
linklist p;
p=new lnode;
p=l;
while(p->next&&j<i-1)
{
p=p->next;
++j;
}
if(!(p->next)||j>i-1){return 0;}
linklist q;
q=new lnode;
q=p->next;
p->next=q->next;
m=q->data;
free(q);
return 1;
}
void createlist_wei(linklist &l,int n)//尾插法
{
l=new lnode;
l->next=NULL;
linklist p,s;
p=new lnode;
p=l;
cout<<"请输入单链表:"<<endl;
for(int i=n;i>0;--i)
{
s=new lnode;
cin>>s->data;
p->next=s;
s->next=NULL;
p=s;
}
}
void createlist_tou(linklist &l,int n)//头插法
{
l=new lnode;
l->next=NULL;
linklist p;
cout<<"请输入单链表:"<<endl;
for(int i=n;i>0;i--)
{
p=new lnode;
cin>>p->data;
p->next=l->next;
l->next=p;
}
}
void display(linklist &l)
{
linklist p;
p=l->next;
cout<<"链表为:";
while(p!=NULL)
{
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
}
void main()
{
int a,i,e;
cout<<"请输入链表长度:";
cin>>a;
linklist l;
createlist_wei(l,a);
//createlist_tou(l,a);
display(l);
cout<<"输入插入位置:";
cin>>i;
cout<<"输入插入数据:";
cin>>e;
cout<<"在链表第"<<i<<"个位置前插入元素"<<e;
listinsert(l,i,e);cout<<endl;
display(l);
cout<<"输入要删除的位置:";
cin>>i;
cout<<"删除链表第"<<i<<"个位置元素"<<m<<endl;
listdelete(l,i);
display(l);
}
追问![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/79f0f736afc37931b72f86fcecc4b74542a9119b?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
你看,哪里错了啊😖
追答我运行没错
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/2cf5e0fe9925bc3101b0024d59df8db1ca137071?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追问能不能把你运行的结果都发图片给我呀
建立,插入和删除
追答![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d4628535e5dde711d50b4b23a0efce1b9c16610d?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追问谢谢
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/f636afc379310a556332c82cb04543a9832610d7?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
那个,请问你能不能再教我一下这个😭