按身高从低到高的顺序排序,并输出排序后的学号、姓名、身高表。
【要求】首先用Windows系统的“记事本”或其他文本编辑软件编辑records.txt文件,每行为学号(整数或数码字符串)、'\t'、姓名(不超过8个字符)、'\t'、身高(浮点型数据)、'\n'。然后编写程序:定义函数原型如下的功能函数,并在main函数中调用这些函数测试其功能,源程序文件名为“1_1.c”。① char *fgetline(FILE *fp, char *str, int n, char delim);
功能:从文件fp中读取字符串存入str,读取的字符数不超过n,或遇到delim指定的字符为止,并将该字符换成串结束标志字符。函数返回所读到的字符串,若直接遇到文件结束则返回空地址(NULL)。
② int getRecs(char *filename, struct STUDENTS *s, int n);
功能:从字符串filename为文件名所联系的文件中读取数据到结构体数组s中,最多读取n个元素,返回实际读取的元素个数。
③ void Sort(struct STUDENTS *s, int n);
功能:对结构体数组s按身高从低到高排序。
④ void Display(struct STUDENTS *s, int n);
功能:输出结构体数组s中所有元素的所有数据成员的值。
输出样例
00000007 孙 丙 1.52
00000002 周 戊 1.58
00000012 冯 壬 1.59
00000003 韩十五 1.60
00000010 蒋十三 1.64
00000006 郑 庚 1.66
00000005 褚十一 1.68
00000016 沈十四 1.70
00000015 李 丁 1.73
00000008 陈 癸 1.74
00000009 卫十二 1.75
00000014 杨十六 1.75
00000011 王 辛 1.76
00000001 赵 甲 1.77
00000004 吴 己 1.81
00000013 钱 乙 1.82
请按任意键继续. . .