#include #include #include struct student { char name[100]; char scname[100]; char o[100]; int gr; int mark[5]; }; struct student group[100]; int main() { FILE * file = fopen("in.txt", "r"); int i = 0; while (fscanf (file, "%s%s%s%d%d%d%d%d%d", group[i].name, group[i].scname, group[i].o, &(group[i].gr), &(group[i].mark[0]), &(group[i].mark[1]), &(group[i].mark[2]), &(group[i].mark[3]), &(group[i].mark[4])) != EOF) { i++; } for (int j = 0; j < i; j++){ printf("Student #%d: %s %s %s\n", j + 1, group[j].scname, group[j].name, group[j].o); printf("Group: %d\nMarks: ", group[j].gr); float s = 0; for (int q = 0; q< 5; q++){ printf("%d ", group[j].mark[q]); s += group[j].mark[q]; } printf("\nAverage: %f\n", s / 5.0); } int f; printf("\nEnter number of a student, or -1 to exit: "); scanf("%d", &f); while (f != -1){ if (f > 0 && f <= i){ f--; printf("Student: %s %s %s\n", group[f].scname, group[f].name, group[f].o); printf("Group: %d\nMarks: ", group[f].gr); float s = 0; for (int q = 0; q< 5; q++){ printf("%d ", group[f].mark[q]); s += group[f].mark[q]; } printf("\nAverage: %f\n", s / 5.0); } else{ printf("Error\n"); } printf("Enter number of a student, or -1 to exit: "); scanf("%d", &f); } return 0; }