#include <bits/stdc++.h>
using namespace std;
struct Node
{
int data;
Node* next;
};
int x;
Node* head, * r, * p; //p的意思是position,当前位置; r的意思是right, 这位数据的指针即将指向下一位
void insert(Node* head, int i, int x)//在第i的位置插入x
{
}
int main()
{
cin.tie(0), cout.tie(0);
ios::sync_with_stdio(0);
cin >> x;
head = new Node; //申请头节点
r = head; //让r一开始也在头节点处
while (x != -1)
{
p = new Node;//申请节点p
p->data = x;
p->next = NULL; //不知道后面还有没有节点,就让他先为空
r->next = p; //把新节点与前面的节点连接起来
r = p;
cin >> x;
}
//以下让这个p = head.next是为了从头开始,利用输出检验一下是否正确
p = head->next;
while (p->next != NULL)
{
cout << p->data << " ";
p = p->next; //让p指向下一位
}
cout << p->data << " ";
cout << endl;
return 0;
}
C++链表学习
最新推荐文章于 2024-10-08 12:54:42 发布