|  | 
 
 发表于 2020-4-7 16:01:11
|
显示全部楼层 
| 数据已经给你读取到数组中了,剩下的自己写吧 
 
 复制代码#include <stdio.h>
typedef struct {
    char id[10];
    char name[20];
    size_t score;
} student_t;
size_t read_data(student_t student[], FILE *fp) {
    size_t i;
    for(i = 0; fscanf(fp, "%s", student[i].id) != EOF; ++i) {
        fscanf(fp, "%s", student[i].name);
        fscanf(fp, "%lu", &student[i].score);
    }
    return i;
}
void print_data(student_t student[], size_t count) {
    for(size_t i = 0; i < count; ++i)
        printf("%s %s %lu\n", student[i].id, student[i].name, student[i].score);
}
int main(void) {
    student_t student[100];
    FILE *fp = fopen("student.txt", "r");
    size_t count = read_data(student, fp);
    print_data(student, count);
    fclose(fp);
    return 0;
}
 | 
 |