| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1764 人关注过本帖
标题:链表合并问题
取消只看楼主 加入收藏
Love_2009
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2009-8-18
结帖率:60%
收藏
已结贴  问题点数:10 回复次数:0 
链表合并问题
#include "stdio.h"
#include "malloc.h"
typedef struct node
{
    int data;
    struct node *next;
}NODE;
NODE *create();
void lianbiaohebing(NODE *pa,NODE *pb);
void print(NODE *head);
main()
{
    NODE *la,*lb;
    printf("请输入第一个链表的元素:\n");
    la=create();
    printf("请输入第一个链表的元素:\n");
    lb=create();
    lianbiaohebing(la,lb);
    print(la);

}
NODE *create()
{
    NODE *p,*q,*head;
    int a,n;
    printf("请你输入链表的长度:");
    scanf("%d",&n);
    head=(NODE *)malloc(sizeof(NODE));
    q=head;
    printf("请你输入链表的个元素:");
    while(n>0)
    {
        scanf("%d",&a);
        p=(NODE *)malloc(sizeof(NODE));
        p->data=a;
        q->next=p;
        q=p;
        n--;
    }
    p->next=NULL;
    return (head);
}
void lianbiaohebing(NODE *la,NODE *lb)
{
    NODE *pa,*pb,*q;
    pa=la->next;
    pb=lb->next;
    while(pa&&pb)
    {
        if(pa->data<=pb->next)
        {
            q->next=pa;
            q=pa;
            pa=pa->next;
        }
        else
        {
            q->next=pb;
            q=pb;
            pb=pb->next;
        }

    }
    q->next=(pa?pa:pb);
    free(lb);
}
void print(NODE *head)
{
    NODE *a;
    a=head->next;
    printf("输出链表为:");
    while(a!=NULL)
    {
        printf("%d",a->data);
        a=a->next;
    }
}


帮我看一下哪里错了,谢谢各位了



搜索更多相关主题的帖子: 链表 
2009-11-19 22:13
快速回复:链表合并问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032180 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved