C语言 锐格实验
10.十一. 链表3-基本应用
1.
链表的创建(1):根据读入的学生信息,利用尾插法创建链表。学生的信息包括:学号(unsigned int)、姓名(char [20],不含空格)、3门课的成绩(double),平均成绩和总成绩,其中每个学生的平均成绩和总成绩由前面读入的数值通过计算得到(均保留2位小数)。
1 | #include <stdio.h> |
2.
链表中数据的查找:利用前面的第一题创建链表,现要求写一个函数完成,按学号查找数据,在主函数中输出,如果找到了,这输出该数据在链表中的位置(利用w存放位置),如果没找到则输出0。
1 | #include <stdio.h> |
3、
有序链表的插入:通过输入学号有序的序列,利用尾插法建立链表。在创建完且学号有序的链表中插入一个新学生信息,使得插入后的链表仍然按照学号有序排列。
1 |
|
4、
链表的删除:在前面的第一题创建完的链表中按照学号删除一个学生的信息。(注:学号唯一)
1 | #include <stdio.h> |
5、
按照有序表的插入算法,建立一个有序的链表:根据第3题的思想,建立一个总成绩有序的链表,即从一个空的头结点开始,按照有序表的插入,逐个输入要插入的信息,依次插入到合适的位置,最终建立一个总成绩有序的链表,按照总成绩降序排列。
学生的信息包括:学号(unsigned int)、姓名(char [20],不含空格)、3门课的成绩(double),平均成绩和总成绩,其中每个学生的平均成绩和总成绩由前面读入的数值通过计算得到(均保留2位小数)。
1 | #include <stdio.h> |