Почему getchar () не ждет, пока я нажму enter после scanf ()?

Я изучаю C и использую «getchar ()», чтобы остановить командные окна, чтобы видеть, какие упражнения выполняю, но это просто не работает. вот образец:

#include <stdio.h>

int main()
{
    int value;
    printf("1. option 1.\n2. option 2.\n3. option 3.\n4. Exit\n\nMake an option: ");
    scanf("%d", &value);
    switch (value)
    {
        case 1:
            printf("you selected the option 1.");
            break;
        case 2:
            printf("you selected the option 2.");
            break;
        case 3:
            printf("you selected the option 3.");
            break;
        case 4:
            printf("goodbye");
            break;
        default:
            printf("thats not an option");
            break;
    }
    getchar();
    return 0;
}

это вывод:

Опция 1.вариант 2.вариант 3.Выход.

Сделать вариант: 1

Вы выбрали вариант 1.

Процесс вернул 0 (0x0) время выполнения: 3.453 с

Нажмите любую клавишу для продолжения.

Почему он не ждет ввода "getchar ()"?