When I run the following code:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    char y;
    printf("Message\n");
    fscanf(stdin, "%c", &y);
    printf("Message\n");
    fscanf(stdin, "%c", &y);
    return 0;
}
I get this:
Message
{enter character}
Message
The problem is that I am not asked to enter a character twice even if there are 2 scanf functions. The output should be this:
Message
{enter character}
Message
{enter character}
I have this issue for getc() too:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    char y;
    printf("Message\n");
    y=getc(stdin);
    printf("Message\n");
    y=getc(stdin);
    return 0;
}
Also, fflush() does not help:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    char y;
    printf("Message\n");
    y=getc(stdin);
    fflush(stdin);
    fflush(stdout);
    printf("Message\n");
    y=getc(stdin);
    return 0;
}
I've tried to fflush stdin, stdout, stdin+stdout (at the same time), but the result is still the same.
 
     
     
     
     
    