先定义一个结构体
struct item{
int data; //存放数据
item* next;
};
顺序输出则需要三个指针:head p2(temp) tail
head用来保存开头的数据地址,p2用来中转,实现新链表的连接工作输出则从head开始,直到head为NULL
int i;
item*head=NULL;
item*tail=NULL;
item*p2=new item;
cin>>p2->data; //先输入第一个数据
p2->next=NULL;
head=p2;
for(i=2;i<=3;i++)
{
tail = new item; //动态创建的数据
cout <<"输入第"<<i<<"个数:";
cin>>tail->data;
p2->next=tail; //将前一个数据的next指向新数据的头
tail->next=NULL;
p2=tail; //让p2指向新创建的数据的地址
}
while(head!=NULL)
{
cout <<head->data<<" ";
head=head->next;
}
delete p2
逆序输出,可以不用head,因为是从最后一个数据反回来读取
#include<iostream>
using namespace std;
struct item{
int data; //存放数据
item* next;
};
int main()
{
int i;
item*tail=NULL;
item*p2=new item;
c