Почему чередующиеся операторы scanf () + printf () приводят к тому, что сначала выполняются оба вызова scanf (), а затем оба вызова printf ()?

Можете ли вы объяснить одну вещь в следующем коде:

#include<stdio.h>

int main()
{
    int n;char ch,ch1;
    scanf("%d\n",&n);
    printf("d-%d \n",n);

    scanf("\n%c",&ch);
    printf("ch-%d \n",ch);

    scanf("\n%c",&ch1);
    printf("ch1-%d \n",ch1);

    printf("%d %d %d\n",n,ch,ch1);
    return 0;
}

Почему после ввода значения n он напрямую запрашивает значение ch, а затем непосредственно выполняет операторы для печати их соответствующих значений, то есть операторов:

printf("d-%d \n",n);
printf("ch-%d \n",ch);

Ответы на вопрос(2)

Ваш ответ на вопрос