头插法创建链表
代码
#include <stdio.h>
#include <stdlib.h>
#define OK 1
#define ERROR -1
typedef int Status;
typedef int ElemType;
typedef struct Lnode
{
ElemType data;
struct Lnode *next;
} Lnode;
//头插法
Lnode *create_LinkList()
{
int data;
Lnode *head;
Lnode *p;
head = (Lnode*)malloc(sizeof(Lnode));
head->next = NULL;
printf("输入要插入的数字, 当输入-1时 插入结束\n");
while(1)
{
scanf("%d", &data);
if(data == -1) break;
p = (Lnode*)malloc(sizeof(Lnode));
p->data = data;
p->next = head->next;
head->next = p;
}
return (head);
}
//查找 i 处的值
ElemType Get_Elem(Lnode *L, int i)
{
int j;
Lnode *p;
p = L->next;
j = 1;
while(p != NULL && j < i)
{
p = p->next;
j++;
}
if(j!