|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 楦潇鸢笕 于 2017-6-7 13:49 编辑
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
int data;
struct Node *next;
}LNode,LinkList;
int listinsert(LinkList *L,int i,int e)
{
int j;
LinkList *p,*q;
q=L;
p=(LinkList *)malloc(sizeof(LinkList));
if(!p)
return 0;
p->data =e;
for(j=0;j<i-1;j++)
{
q=q->next ;
}
p->next =q->next ;
q->next =p;
return 1;
}
int main(void)
{
LinkList *L;
int n,i,j;
int e;
scanf("%d",&n);
L=(LinkList *)malloc(sizeof(LinkList));
if(!L)
return 0;
for(j=0;j<n;j++)
{
scanf("%d",&L->data );
}
scanf("%d%d",&i,&e);
listinsert(L,i,e);
for(j=0;j<=n;j++)
{
printf("%d",L->data );
}
return 0;
}
编译没出错 不知道为什么不能输出
求大神指教
1.你单链表的创建有问题,你只创建了结点的值,没有建立结点之间的关系,即你结构体中的next指针没有用到。
2.创建链表后的过程中插入链表的逻辑不正确,在链表开头、中间、结尾插入过程都不一样,你插入的函数也没有体现。
|
|