#include <iostream> using namespace std; struct Node { int date; //结点的数据 struct Node *next; //指向下一结点 }; Node *head=NULL; //将链表头定义为全局变量,以便于后面操作 void make_list(); //建立链表 void out_list(); //输出链表 int main() { make_list(); out_list(); return 0; } void make_list() { int n; Node *p; cout<<"输入若干正数(以0或一个负数结束)建立链表:"<<endl; cout<<endl; cin>>n; while(n>0) //输入若干正数建立链表,输入非正数时,建立过程结束 { p=new Node; //新建结点 p->date=n; p->next=head; //新建的结点指向原先链表头 head=p; //链表头赋值为新建的结点,这样,新结点总是链表头 cin>>n; //输入正数,准备建立下一个结点 } return; } void out_list() { Node *p=head; cout<<"链表中的数据为: "<<endl; cout<<endl; while(p!=NULL) { cout<<p->date<<" "; p=p->next; } cout<<endl; return ; }
原文地址:http://blog.csdn.net/i__am__legend/article/details/42340021