链表逆序输出

#include <iostream>
#include <cstdio>
#include <stdlib.h>
using namespace std;
struct ListNode
{
    int m_value;
    ListNode *m_pNext;
};
void PrintList(ListNode *pHead);
int main()
{
    ListNode *pHead;
    ListNode *pNode;
    ListNode *pN;
    pHead=(ListNode*)malloc(sizeof(ListNode));
    pHead->m_pNext=NULL;
    pNode=pHead;
    int n;
    int count=6;
    while(count--)
    {
        pN=(ListNode*)malloc(sizeof(ListNode));
        pNode->m_pNext=pN;
        pNode=pN;
        scanf("%d",&n);
        pNode->m_value=n;
    }
    pNode->m_pNext=NULL;
    PrintList(pHead->m_pNext);
    return 0;
}
void PrintList(ListNode *pHead)
{
    if(pHead!=NULL)
    {
        if(pHead->m_pNext!=NULL)
            PrintList(pHead->m_pNext);
        printf("%d\n",pHead->m_value);
    }
}

posted on 2014-06-20 21:53  XiaoFei Wang  阅读(128)  评论(0编辑  收藏  举报

导航