void save_file(int num) { FILE *fp; fp = fopen("student_info.txt", "w"); for (int i = 0; i < num; i++) { fprintf(fp, "%s %s %s ", stu[i].id, stu[i].name, stu[i].gender); for (int j = 0; j < 5; j++) { fprintf(fp, "%.1f ", stu[i].score[j]); } fprintf(fp, "%.1f %.1f %d\n", stu[i].total_score, stu[i].average_score, stu[i].rank); } fclose(fp); }这段代码是什么意思
时间: 2024-04-03 07:30:43 浏览: 60
linux_file_op.zip_file操作_linux fopen_open
这段代码是一个C语言函数,用于将保存在内存中的学生信息写入到磁盘文件"student_info.txt"中。
函数的参数num表示学生数量,stu数组存储了学生的相关信息,包括学号、姓名、性别、五门课程的分数、总分、平均分和排名。
具体实现过程如下:
1. 打开文件"student_info.txt",以写入的方式打开,如果文件不存在则会新建一个。
2. 循环写入每个学生的信息,每个学生信息包括学号、姓名、性别、五门课程的分数、总分、平均分和排名。
3. 将每个学生的信息写入文件中,格式为"%s %s %s %.1f %.1f %.1f %.1f %.1f %d\n"。
4. 关闭文件。
注意,这段代码中使用了fprintf函数,它的作用是将指定格式的数据写入到文件中。其中,%s表示字符串,%.1f表示保留一位小数的浮点数,%d表示整数。
阅读全文