依次输出链表中的各个结点的递归算法

依次输出链表中的各个结点的递归算法,第1张

#include

#define ok 1
#define error 0
#define overflow -1

typedef int status;
typedef char selemtype;
using namespace std;

//链表的定义 
typedef struct node
{
	selemtype data;
	struct node *next;
}node,* linklist;

//后插法创建链表算法
status hcfcj(linklist &L,int n)
{
	L=new node;
	L->next=NULL;
	linklist p,r;
	int i;
	r=L;
	for(i=0;i<n;i++)
	{
	p=new node;
	cin>>p->data;
	p->next=NULL;
	r->next=p;
	r=p;
	}
	return ok;
 } 
 
//遍历输出链表中各个结点的递归算法
status blsc(linklist &L)
{
	while(L)
	{
	if(L==NULL)
	  return error;
	else 
		cout<<L->data<<" ";
	L=L->next;
	}
	
	return ok;
}

int main()
{
	int n;
	linklist L;
	cout<<"请输入元素的个数:"<<endl;
	cin>>n;
	cout<<"请输入链表元素:"<<endl;
	hcfcj(L,n);
	cout<<"链表中的元素依次为:"<<endl;
	blsc(L->next);
	cout<<endl;
	return 0;
 } 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1325039.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-12
下一篇 2022-06-12

发表评论

登录后才能评论

评论列表(0条)

保存