首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

简单小程序 求帮助啊 (关于删除链表的结点)解决思路

2012-05-20 
简单小程序求帮助啊 (关于删除链表的结点)C/C++ code#include stdio.h#include malloc.htypedef struc

简单小程序 求帮助啊 (关于删除链表的结点)

C/C++ code
#include "stdio.h"#include "malloc.h"typedef struct LNode{    int data;    struct LNode *next;}LNode,*LinkList;//构造一个链表bool CreatList(LinkList &L){    int x;    L=(LinkList)malloc(sizeof(LNode));    scanf("%d",&x);    LNode *r=L,*s;    while(x!=999)    {        s=(LinkList)malloc(sizeof(LNode));        s->data=x;        r->next=s;        r=s;        scanf("%d",&x);    }    r->next=NULL;    return true;}//删除链表中最小结点LinkList DeleteMin(LinkList &L){    LNode *p=L,*pre=p->next;    LNode *minp=p,*minpre=pre;    while (p!=NULL)    {        if (p->data<minp->data)        {            minp=p;            minpre=pre;        }        pre=p;        p=p->next;    }    minpre->next=minp->next;    free(minp);    return L;}void main(){    LinkList L;    CreatList(L);    DeleteMin(L);    while(L->next)    {        L=L->next;        printf("%d",L->data);    }}

为什么无法输出结果呢?说是内存空间被占用什么的。

[解决办法]
楼主,你要输入999结束吧

热点排行