C++链表学习

#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;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值