#include <iostream>
using namespace std;
typedef struct list
{
int data;
struct list * pnext;
} List, * pList;
pList CreatHeadNode ();
pList CreatNewNode ();
void BuildList (pList);
void PrintList (pList);
int main ()
{
pList pHead = CreatHeadNode ();
BuildList (pHead);
PrintList (pHead);
}
pList CreatHeadNode ()
{
pList pNewNode = new List;
if (pNewNode == NULL)
exit (-1);
pNewNode->pnext = NULL;
pNewNode->data = 0;
return pNewNode;
}
pList CreatNewNode ()
{
pList pNewNode = new List;
if (pNewNode == NULL)
exit (-1);
cin >> pNewNode->data;
if (pNewNode->data == 0)
return NULL;
pNewNode->pnext = NULL;
return pNewNode;
}
void BuildList (pList pHead)
{
pList pTail = pHead;
pList pNewNode = CreatNewNode ();
while (pNewNode)
{
pTail->pnext = pNewNode;
pTail = pNewNode;
pNewNode = CreatNewNode ();
}
}
void PrintList (pList pHead)
{
pList p = pHead->pnext;
while (p)
{
cout << p->data << " ";
p = p->pnext;
}
}
键盘输入一组元素,以0做结束输入的标记,建立一个带头结点的单向链表(无序,且值域为整型),遍历单向链表,显示相应元素。
最新推荐文章于 2023-11-02 10:11:17 发布