给我一个创建并显示链表的可成功运行的c++程序要求可以输入链表内容
以下是一个创建并显示链表的完整C++程序,可以输入链表内容:
#include <iostream>
using namespace std;
// 定义链表节点
struct ListNode {
int val;
ListNode* next;
ListNode(int x) : val(x), next(NULL) {}
};
// 创建链表
ListNode* createList() {
int n;
cout << "请输入链表长度: ";
cin >> n;
if (n <= 0) {
return NULL;
}
cout << "请输入链表节点的值: ";
int val;
cin >> val;
ListNode* head = new ListNode(val);
ListNode* p = head;
for (int i = 2; i <= n; i++) {
cout << "请输入链表节点的值: ";
cin >> val;
ListNode* node = new ListNode(val);
p->next = node;
p = p->next;
}
return head;
}
// 显示链表
void printList(ListNode* head) {
ListNode* p = head;
while (p != NULL) {
cout << p->val << " ";
p = p->next;
}
cout << endl;
}
int main() {
ListNode* head = createList();
cout << "链表的值为: ";
printList(head);
return 0;
}
在这个程序中,我们首先定义了一个链表节点结构体 ListNode,它包括一个整数值 val 和一个指向下一个节点的指针 next。
然后我们定义了一个函数 createList(),用于创建链表。在用户输入链表长度后,我们通过循环输入每个节点的值,并使用 new 运算符分配内存来创建一个新的节点。我们将第一个节点指定为链表的头节点,并在循环中将每个新节点添加到链表的尾部。最后,我们返回头节点的指针。
我们还定义了一个函数 printList(),用于显示链表的值。我们遍历整个链表,并输出每个节点的值。
在 main() 函数中,我们首先调用 createList() 函数创建链表,然后调用 printList() 函数显示链表的值。
原文地址: https://www.cveoy.top/t/topic/bhux 著作权归作者所有。请勿转载和采集!