中央电大本科数据构造形成性考核册试验汇报试验名称:试验一 线性表线性表的链式存储构造【问题描述】某项比赛中,评委们给某参赛者的评分信息存储在一种带头结点的单向链表中,编写程序:(1)显示在评分中给出最高分和最低分的评委的有关信息(姓名、年龄、所给分数等)。(2)在链表中删除一种最高分和一种最低分的结点.(3)计算该参赛者去掉一种最高分和一种最低分后的平均成绩。【基本规定】(1)建立一种评委打分的单向链表;(2)显示删除有关结点后的链表信息.(3)显示规定的成果.【试验环节】(1)运行 PC 中的 Microsoft Visual C++ 6.0 程序,(2)点击“文献”→“新建” →对话窗口中“文献” →“c++ Source File” →在“文献名”中输入“X1。cpp” →在“位置”中选择储存途径为“桌面” →“确定",(3)输入程序代码,程序代码如下:#include #include #define NULL 0 #define PWRS 5 //定义评委人数struct pw //定义评委信息 { char name[6]; float score; int age; }; typedef struct pw PW; struct node //定义链表结点 {struct pw data; struct node * next; };typedef struct node NODE; NODE *create(int m); //创立单链表 int calc(NODE *h); //计算、数据处理 void print(NODE *h); //输出所有评委打分数据 void input(NODE *s);//输入评委打分数据 void output(NODE *s);//输出评委打分数据 void main() { NODE *head; float ave=0; float sum=0; head=create(PWRS); printf(”所有评委打分信息如下:\n"); print(head);//显示目前评委打分 calc(head);//计算成绩 printf("该选手去掉 1 最高分和 1 最低分后的有效评委成绩:\n"); print(head);//显示去掉极限分后的评委打分 }void input(NODE *s) { printf(”请输入评委的姓名: ”); scanf("%S”,&s-〉data。name); printf("年龄: ”); scanf(”%d",&s—〉data.age); printf(”打分: ”); scanf(”%f”,&s—〉data。score); printf("\n”); } void output(NODE *s) {printf(”评委姓名: %8s ,年龄: %d,打分: %2。2f\n”,s-〉data.name,s—〉data.age,s—〉data.score);...