建立单链表输出第i个元素
时间: 2023-12-23 14:03:32 浏览: 32
好的,这是一个程序设计问题。建立单链表可以用结构体来实现,每个结构体节点包含一个数据域和一个指向下一个节点的指针。首先创建一个结构体定义链表节点:
```
struct Node {
int data;
Node* next;
};
```
然后根据需要创建链表,并输出第i个元素。这里给出一个示例代码:
```
#include <iostream>
using namespace std;
struct Node {
int data;
Node* next;
};
int main() {
int n, i;
cout << "请输入链表的长度: ";
cin >> n;
// 创建链表
Node* head = new Node;
Node* p = head;
for (int j = 1; j <= n; j++) {
Node* tmp = new Node;
cout << "请输入第" << j << "个元素: ";
cin >> tmp->data;
p->next = tmp;
p = tmp;
}
p->next = NULL;
// 输出第i个元素
cout << "请输入要输出的元素位置: ";
cin >> i;
p = head->next;
for (int j = 1; j < i && p; j++) {
p = p->next;
}
if (p) {
cout << "第" << i << "个元素为: " << p->data << endl;
}
else {
cout << "链表长度不足" << i << "个元素" << endl;
}
// 释放内存
p = head;
while (p) {
Node* tmp = p;
p = p->next;
delete tmp;
}
return 0;
}
```
运行程序,根据提示依次输入链表的长度和各个元素的值,然后输入要输出的元素位置即可。