利用数据结构c语言单链表编写一个void MaxMin(LinkList L)//显示最高分和最低分的学生信息
时间: 2024-01-21 11:02:28 浏览: 87
好的,下面是用C语言单链表实现显示最高分和最低分的学生信息的代码:
```c
#include <stdio.h>
#include <stdlib.h>
//定义链表节点结构体
typedef struct Node{
int score;
char name[20];
struct Node *next;
}Node, *LinkList;
//创建链表
void CreateList(LinkList *L){
*L = (LinkList)malloc(sizeof(Node));
(*L)->next = NULL;
}
//插入链表节点
void InsertNode(LinkList L, char name[], int score){
Node *p = (Node*)malloc(sizeof(Node));
p->score = score;
strcpy(p->name, name);
p->next = L->next;
L->next = p;
}
//查找链表最高分和最低分学生信息
void MaxMin(LinkList L){
int maxScore = 0, minScore = 100;
char maxName[20], minName[20];
Node *p = L->next;
while(p){
if(p->score > maxScore){
maxScore = p->score;
strcpy(maxName, p->name);
}
if(p->score < minScore){
minScore = p->score;
strcpy(minName, p->name);
}
p = p->next;
}
printf("最高分学生:%s,分数:%d\n", maxName, maxScore);
printf("最低分学生:%s,分数:%d\n", minName, minScore);
}
//主函数
int main(){
LinkList L;
CreateList(&L);
InsertNode(L, "小明", 90);
InsertNode(L, "小红", 85);
InsertNode(L, "小刚", 95);
InsertNode(L, "小李", 80);
MaxMin(L);
return 0;
}
```
在这个代码中,我们通过定义链表节点结构体和创建链表函数来实现创建单链表。然后,我们通过插入链表节点函数来逐个添加学生信息(姓名和分数)。最后,我们通过查找最高分和最低分学生信息的函数来获得链表中的最高分和最低分学生信息,然后输出它们的姓名和分数。
阅读全文