Loading... 由于单链表的每个节点都有一个数据域和指针域,所以,每个节点都可以定义成一个记录。比如,有如下一个单链表,如何定义这种数据结呢? ![单链表](https://blog.fivk.cn/usr/uploads/2021/03/839355656.png) 下面给出建立并输出单链表的程序,大家可以把它改成过程用在以后的程序当中。 ```C #include<iostream> using namespace std; struct Node { int data; Node* next; }; Node* head, * p, * r;//r指向链表的当前最后一个节点,可以称为尾指针 int x; int main() { cin >> x; head = new Node; //申请头节点 r = head; while (x != -1) //读入的数非-1 { p = new Node; //否则,申请一个新节点 p->data = x; p->next = NULL; r->next = p; //把新节点链接到前面的链表中,实际上r是p的直接前趋 r = p; //尾指针后移一个 cin >> x; } p = head->next; while (p != NULL) { cout << p->data << " "; p = p->next; } system("pause"); return 0; } ``` 最后修改:2021 年 03 月 19 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏