#include <iostream> using namespace std; struct ListNode { int m_nKey; ListNode* m_pNext; //构造函数 ListNode():m_nKey(0),m_pNext(nullptr){}; ListNode(int x):m_nKey(x),m_pNext(nullptr){}; }; int main() { int num,node; while(cin>>num) { //链表的头 ListNode* head=new ListNode(); ListNode* pre_head = head; //初始化链表 while(num--) { cin>>node; ListNode* next=new ListNode(node); head->m_pNext = next; head = head->m_pNext; } //输入需要查询的位置:num cin>>num; ListNode* first = pre_head;//指向了输入的头; if(num<=0) { cout<<"0"<<endl; continue; } for(int i=0; i<num; i++) { if(first->m_pNext != nullptr) { first = first->m_pNext; } else { cout<<"0"<<endl; continue; } } ListNode* result = pre_head->m_pNext; while(first->m_pNext != nullptr) { result = result->m_pNext; first = first->m_pNext; } cout<<result->m_nKey<<endl; } return 0; }