解题思路:
注意事项:
参考代码:
#include<stdio.h>
#include<stdlib.h>
typedef struct STU {
int num;
int score;
struct STU* next;
}list;
list* create(int n);
list* DleteL(list* l1, list*l2);
void output(list* t);
int main()
{
list* head1, * head2, *p;
int n, m;
scanf("%d%d", &n, &m);
head1 = create(n);
head2 = create(m);
head1 = DleteL(head1, head2);
output(head1);
return 0;
}
list*create(int n)
{
list* temp, *p1, *p2;
p1 = (list*)malloc(sizeof(list));
p1->next = NULL;
temp = p1;
while(n--){
p2 = (list*)malloc(sizeof(list));
p2->next = NULL;
scanf("%d%d", &p2->num, &p2->score);
temp->next = p2;
temp = p2;
}
return p1;
}
list* DleteL(list* l1, list* l2)
{
int count = 0;
list* p1 = l1->next;
list* p2, * head, * q, *temp;
head = (list*)malloc(sizeof(list));
head->next = NULL;
temp = head;
while (p1 != NULL) {
p2 = l2->next;
while(p2 != NULL && p1->num != p2->num) {
p2 = p2->next;
}
if (p2 == NULL) {
q = (list*)malloc(sizeof(list));
q->num = p1->num;
q->score = p1->score;
q->next = NULL;
temp->next = q;
temp = q;
count++;
}
p1 = p1->next;
}
printf("%d\n", count);
return head;
}
void output(list* t)
{
while (t->next!= NULL) {
t = t->next;
printf("%d %d ", t->num, t->score);
}
}
0.0分
0 人评分
C二级辅导-同因查找 (C语言代码)浏览:626 |
大小写转换 (C语言代码)浏览:904 |
三角形 (C++代码)记忆化搜索浏览:1318 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:727 |
1014题解浏览:524 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:644 |
勾股数 (C语言代码)浏览:830 |
数列有序 (C语言代码)浏览:974 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:593 |
C语言程序设计教程(第三版)课后习题10.1 (C++代码)浏览:529 |