/*
题目1511:从尾到头打印链表
*/
#include <stdio.h>
#include <string.h>
struct Node
{
int data;
struct Node *next;
};
void prit(Node *root)
{
while(root!=NULL)
{
printf("%d",root->data);
root=root->next;
}
}
void Rprit(Node *root)
{
if(root==NULL)
return ;
else Rprit(root->next);
printf("%d\n",root->data);
}
Node *createNode(int value)
{
Node *pNode=new Node();
pNode->data=value;
pNode->next=NULL;
return pNode;
}
void AddToTail(Node **pHead,int value)
{
Node *pNew = new Node();
pNew->data=value;
pNew->next=NULL;
if(*pHead==NULL)
{
*pHead = pNew;
}
else
{
Node *pNode = *pHead;
while(pNode->next!=NULL)
{
pNode = pNode->next;
}
pNode->next = pNew;
}
}
int main()
{
Node *nNode=NULL;
// prit(nNode);
int n;
while(scanf("%d",&n)!=EOF)
{
if(n<0)
break;
AddToTail(&nNode,n);
}
Rprit(nNode);
return 0;
}