头结点的单向链表 编写程序建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入0时,表示结束(链表头结点的data域不放数据,表空条件是next==NULL)。
时间: 2023-07-10 07:17:57 浏览: 93
好的,这是一个简单的头结点单向链表的建立代码,您可以参考一下:
```c++
#include <iostream>
using namespace std;
//链表结点的定义
struct Node {
int data;
Node *next;
};
int main() {
Node *head = new Node; //头结点
head->next = nullptr; //初始化为空链表
Node *p = head; //p指向最后一个结点
//输入数据,建立链表
int x;
cin >> x;
while (x != 0) {
Node *newNode = new Node;
newNode->data = x;
newNode->next = nullptr;
p->next = newNode;
p = newNode;
cin >> x;
}
//输出链表
p = head->next;
while (p != nullptr) {
cout << p->data << " ";
p = p->next;
}
cout << endl;
return 0;
}
```
代码中,头结点的data域为空,next域指向第一个结点。建立链表时,使用一个指针p记录最后一个结点,每输入一个数据就新建一个结点,将其链接到p的后面,然后更新p指向该结点。最后输出链表时,从头结点的下一个结点开始遍历输出即可。
阅读全文