Как ввести строку в массив структур на си?

В общем, долго расписывать не буду. Когда я ввожу фамилию первый раз вроде всё работает, но при втором проходе цикла пропускается ввод фамилии и предлагается ввести сразу оценку. Как исправить хз.

#include<stdio.h>
#include<locale.h>
#include<string.h>
#define N 5

struct stud {
    char prizv[20];
    int rat1;
    int rat2;
    double srat;
}X[N];

int main() {
    setlocale(LC_ALL, "RUS");
    for (int i = 0; i < N; i++) {
        printf("Фамилия ");
        fgets(X[i].prizv, 20, stdin); //здесь
        printf("Оценка1 ");
        scanf_s("%d", &X[i].rat1);
        printf("Оценка2 ");
        scanf_s("%d", &X[i].rat2);
        X[i].srat = ((double)X[i].rat1 + X[i].rat2) / 2;
        printf("Средняя оценка %F\n\n", X[i].srat);
    }
    return 0;
}

Ответы (0 шт):