#include<stdio.h>
#include<stdlib.h>
//头插法新建表
//输入 3 4 5 7 9999
//输出 7 5 4 3
//步骤
//1. 创建单链表结构体 定义头指针 为头指针申请空间
//2.头指针指向尾部NULL
//3. 定义新结点的指针 定义元素 scanf输入第一个元素
//4.while循环建表,为新结点申请空间 赋值新元素
//5.打印
//6.结束
typedef int ElemType;
//创建单链表结构体
typedef struct LNode{
ElemType data;//数据域
struct LNode *next;//指针域
}LNode,*LinkList;
void list_headinsert(LinkList &L)//头插法
{
LinkList s;//新结点的指针
ElemType x;//新的元素
scanf("%d",&x);
while(x!=9999)
{
s=(LinkList)malloc(sizeof(LNode));//为新结点申请空间
s->data=x;//赋值
s->next=L->next;
L->next=s;
scanf("%d",&x);
}
}
void print_list(LinkList L)
{
L=L->next;
while(L!=NULL)
{
printf("%3d",L->data);
L=L->next;
}
printf("\n");
}
int main()
{
LNode *L;//头指针
L=(LinkList)malloc(sizeof(LNode));//头指针申请空间
L->next=NULL;
list_headinsert(L);
print_list(L);
return 0;
}
数据结构——头插法新建单链表
最新推荐文章于 2023-05-07 16:49:33 发布