小荆


私信TA

用户名:JHN01

访问量:6285

签 名:

等  级
排  名 2354
经  验 2346
参赛次数 0
文章发表 23
年  龄 0
在职情况 学生
学  校 邯郸学院
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

#include<stdio.h>
#include<stdlib.h>

typedef struct node{
 struct node *next;
 int num;
 int score;}data;

data *creatlist(int n)
{
 int i;
 data *head,*p,*q;

 head=p=(data *)malloc(sizeof(data));

 
 for(i=0;i<n;i++)
 {
  q=(data *)malloc(sizeof(data));
  scanf("%d %d",&q->num,&q->score);
  p->next=q;
  p=q;
 }

 p->next=NULL;
 return head;
}

int merge(data *head,data *head1)
{
 int n,x;
 data *p,*q,*pa;
 pa=head1->next;
 x=0;

 while(pa)
 {
  n=pa->num;
  p=head;
  q=p->next;

  while(q)
  {
   if(q->num==n)
   {
    p->next=q->next;
    free(q);
    q=p->next;
    x++;
    break;
   }
   p=q;
   q=q->next;
  }
  
  pa=pa->next;
 }
 return x;
}

void outlist(data *head)
{
 data *pa;
 for(pa=head->next;pa;pa=pa->next)
 printf("%d %d\n",pa->num,pa->score);
}

int main()
{
 int n,m,x;
 data *head,*head1;
 scanf("%d %d",&n,&m);

 head=creatlist(n);
 head1=creatlist(m);

 x=merge(head,head1);
 printf("%d\n",n-x);

 outlist(head);

 return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »