#include"stdio.h"
#include"stdlib.h"
#include"string.h"
typedef struct _ListNode
{
int data;
struct _ListNode * node;
}ListNode;
ListNode * initList()
{
ListNode * li =(ListNode*)malloc(sizeof(ListNode));
int data = 0;
li->data = 0;
li->node = NULL;
ListNode * pm = NULL;
ListNode * pcu = li;
printf("Enter the list:");
scanf("%d",&data);
while(data != -1)
{
pm =(ListNode*)malloc(sizeof(ListNode));
pm->data = data;
pm->node = NULL;
pcu->node = pm;
pcu = pm;
printf("Enter the list:");
scanf("%d",&data);
}
return li;
}
int printList(ListNode * li)
{
if(li == NULL)
{
printf("ERROR!");
return -1;
}
ListNode * p = li;
while(p->node != NULL)
{
p = p->node;
printf("%d\n",p->data);
}
return 0;
}
int insertList(ListNode *li ,int x ,int y)
{
if(li == NULL)
{
printf("error!");
return -1;
}
ListNode * ptemp = (ListNode*)malloc(sizeof(ListNode));
ptemp->data = y;
ptemp->node = NULL;
ListNode * pPre = li;
ListNode * pCur = li->node;
while(pCur != NULL)
{
if(pCur->data == x)
{
break;
}
pPre = pCur;
pCur = pCur->node;
}
ptemp->node = pPre->node;
pPre->node = ptemp;
return 0;
}
int deleList(ListNode * li)
{
if(li == NULL)
{
printf("error");
return -1;
}
ListNode * pPre = li;
ListNode * pCur = li->node;
while(pCur != NULL)
{
pPre->node = pCur->node;
free(pCur);
pCur = pPre->node;
}
}
int main()
{
ListNode *p = initList();
insertList(p,12,222);
//deleList(p);
printList(p);
}
C简单链表复习
最新推荐文章于 2022-03-15 10:02:09 发布