瞬间就写完了。就是注意指针就行了
#include<iostream>
#include<cstdio>
using namespace std;
struct Node
{
int data;
Node * next;
Node(int i)
{
data=i;
next=NULL;
}
};
void reverseinput(Node * p)
{
if(p!=NULL)//如果不是空 就继续递归p->next;
{
reverseinput(p->next);
}
else//是空 说明到头了 先返回这个函数
return ;
cout<<p->data<<" ";
}
int main()
{
Node * head=new Node(1);
int a;
Node * p=head;
while(scanf("%d",&a) && a!=-1)
{
p->next=new Node(a);
p=p->next;
}
cout<<"ok"<<endl;
reverseinput(head);
return 0;
}