// 尾插法单链表递归.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//#include <iostream>
using namespace std;
#define endtag -1
typedef struct node {int data;struct node* link;
}Linknode,*linklist;
void createrear(linklist& last, int end)
{int val;cin >> val;if (val == endtag){last = NULL;//链表收尾停止创建}else{last = new Linknode;//创建新节点last->data = val;createrear(last->link,end);//递归创建后续链表}}
void print(linklist first)
{if (first == NULL)return;cout << first->data << " ";print(first->link);
}
int main()
{linklist l; int end;l = new Linknode;linklist rear = l;//尾指针,初始化指向头结点cin >> end;//输入约定的结束标志createrear(rear->link,end);std::cout << "Hello World!\n";print(l->link);
}
last = new Linknode;//创建新节点
last