解题思路:

注意事项:

这只是给我自己一个备忘录

参考代码:

#include<stdio.h>
#include<malloc.h>
typedef struct student
{
    int num;
    int cor;
    struct student *next;
}node,*linklist;
linklist creat(int n)
{
    node *head;
    head=(node*)malloc(sizeof(node));
    head->next=NULL;
    node *p;
    node *q=head;
    for(int i=0;i<n;i++)
    {
        p=(node*)malloc(sizeof(node));
        scanf("%d %d",&(*p).num,&(*p).cor);
        p->next=q->next;
        q->next=p;
        q=p;
    }
    return head;
}
void pout(linklist L)
{
    L=L->next;
    while(L!=NULL)
    {
        printf("%d %d\n",L->num,L->cor);
        L=L->next;
    }
}
void paixu(linklist head1,linklist head2)
{
    node*q;
    q=head1;
    head2=head2->next;
    while(q->next!=NULL)
    {
        q=q->next;
    }
    q->next=head2;
    q=head1->next;
    node*min;
    int n,m,t;
    node *p;
    while(q!=NULL)
    {
        p=q;
        t=p->num;
        min=p;
        while(p!=NULL)
        {
            if(t>p->num)
            {
                t=p->num;
                min=p;
            }
            p=p->next;
        }
        n=q->num;
        q->num=min->num;
        min->num=n;
        m=q->cor;
        q->cor=min->cor;
        min->cor=m;
        q=q->next;
    }
    pout(head1);
}
int main()
{
    node*head1;
    node*head2;
    int n,m;
    scanf("%d %d",&n,&m);
    head1=creat(n);
    head2=creat(m);
    paixu(head1,head2);
    //pout(head1);
    return 0;
}

点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论