单链表的创建

//创建链式线性表,采用逆位序输入
#include<iostream>
#include<stdlib.h> 
using namespace std;
typedef  struct LNode
	{
		int data;
		struct LNode *next;
	}LNode , *LinkList;     //*LinkList代表指向LNode节点的指针的类型名,定义指向LNode的指针时,LinkList 相当于 LNode*  

int main()
{
	LinkList m;
	LNode * CreateList_L(LinkList &L ,int n);  //声明
	LNode *p = CreateList_L(m , 6);
	while(p->next)
	{	p = p->next;  //while(p)时,p->next会出现越界,越界地址赋给p会中断 
		cout<<p->data<<"    ";
	
	}

}

LNode *  CreateList_L(LinkList &L , int n)
{
	//建立带头结点的单链线性表
	L = (LinkList)malloc(sizeof(LNode));
	L->next = NULL;  //建立一个带头结点的链表
	for(int i = n ; i>0 ; --i)
	{
		LNode *p = (LinkList)malloc(sizeof(LNode));  //生成新节点
		cout<<"输入第"<<n-i+1<<"个节点数据"<<endl;
		cin>>p->data;
		p->next = L->next;
		L->next = p;  //插入到表头
	}
	return L;
}

运行结果:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值