标题:两个单链式风别从小到大排列为啥不对求大神帮满看看
取消只看楼主
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
结帖率:70%
已结贴  问题点数:10 回复次数:1 
两个单链式风别从小到大排列为啥不对求大神帮满看看
#include<stdio.h>
#include<stdlib.h>
typedef struct lnode
{
int data;
struct lnode *next;
}lnode, *linklist,*linklist1;
//定义单链试结构
int main()
{
linklist head,p,r;
int i,n,t;
linklist1 head1,p1,r1;
head=(linklist)malloc(sizeof(lnode));
head->next=NULL;
r=head;
//建立头结点
printf("请输入p结点个数:\n");
scanf("%d",&n);
printf("请输入P的元素值:\n");
for(i=1;i<=n;i++)
{
p=(linklist)malloc(sizeof(lnode));
p->next=NULL;
scanf("%d",&p->data);
//建立一个结点
r->next=p;
r=r->next;
//建立一下节点
}
//次循环的整体为建立一个n节点的单链式结构
r=head->next;
p=r->next;
while(r&&p)
{
if(p->data<=r->data)
{
r->next=p->next;
p->next=r;
r=r->next;
p=p->next;
}
}
p=head->next;
while(p)
{
printf("%5d",p->data);
p=p->next;
}//输出p的元素值
printf("\n");
head1=(linklist1)malloc(sizeof(lnode));
head1->next=NULL;
r1=head1;
printf("请输入p1结点个数:\n");
scanf("%d",&t);
printf("请输入P1的元素值:\n");
for(i=1;i<=t;i++)
{
p1=(linklist1)malloc(sizeof(lnode));
p1->next=NULL;
scanf("%d",&p1->data);
//建立一个结点
r1->next=p1;
r1=r1->next;
//建立一下节点
}
//次循环的整体为建立一个t节点的单链式结构
r1=head1->next;
p1=r1->next;
while(r1&&p1)
{
if(p1->data<=r1->data)
{
r1->next=p1->next;
p1->next=r1;
r1=r1->next;
p1=p1->next;
}
}//元素从小到大的排列
p1=head1->next;
while(p1)
{
printf("%5d",p1->data);
p1=p1->next;
}//输出p1的元素值
return 0;
}
搜索更多相关主题的帖子: 元素 include 
2017-03-15 17:52
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
得分:0 
回复 楼主 亲琪琪
谢谢啦 经你一说我又改了一下 好了
2017-03-16 17:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-475112-1-1.html




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

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