要求如下:
1.声明一个链表需要的结构和指针
2.在链表开头添加一个元素
3.在链表末尾添加一个元素
4.在链表中间添加一个元素
代码:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#pragma warning(disable : 4996)
//链表的数据结构
struct data {
char name[20];
struct data* next;
};
//为结构和指向该结构的指针定义typedef
typedef struct data PERSON;
typedef PERSON* LINK;
int main(void) {
//头指针,新指针,和当前元素指针
LINK head = NULL;
LINK new = NULL;
LINK current = NULL;
/*添加第一个链表元素
虽然这个演示程序的链表一定为空
但是程序中并未假设链表为空
*/
new = (LINK)malloc(sizeof(PERSON));
new->next = head;
head = new;
strcpy(new->name, “Abigail”);
//在链表末尾添加一个元素
//假设链表至少有一个元素
current = head;
while (current->next!= NULL) {
current = current->next;
}
new = (LINK)malloc(size