文件操作+线性链表+冒泡排序实验室。
现有结构体定义如下:
struct stuInfo
{
char id[12]; //数据成员
char name[15];
float score;
struct stuInfo *next; //指针成员
};
要求:
(1)首先完成线性链表的定义和创建,确保链表的第一个节点为哨兵节点,不存放有效的数据;
(2)利用文件的相关操作,动态开辟节点存储空间,将存放在磁盘某个路径中的文件“stuinfo.txt”信息逐条读入,并依次存入到线性链表的每个节点中,信息如下;
00001 张三 100
00002 李四 99
00003 王五 100
00004 王六 89
00005 江涛 98
00006 陈琪 88
00007 祁廷 91
(3)接下来,将学号为‘00004’的节点删除;
(4)再接下来,利用冒泡排序,对链表继续升序排序;
(5)将完整的线性链表信息从头到尾依次存储到磁盘某个路径下的“score.txt”文件中,存储格式和“stuinfo.txt”文件相同。
这个作业有N个人问过了,但还没看到有完全对应的代码。链表网上有很多,也很简单,有哨兵会更简单
文件读写就是FILE的fopen打开后fgets逐行读取再sscanf分解数据,也有直接fscanf直接分解行数据的,都可以试试
写入fprintf就可以
冒泡排序也是满大街都有的现成代码
后续将写个博客文章实现这个作业
写好了,现在还需要不