I am using Eclipse (the latest version) along with Cygwin GCC (I have also observed the same issue while using MinGW GCC, and hence changed the GCC). Consider a simple code snippet:
#include<stdio.h>
int main(){
char a[5];
printf("prompt1\n");
scanf("%s",a);
printf("\Hi\t%s",a);
}
The image shows the entire output of the program, which, as you can see, should be in a completely different order. This issue was also on my old laptop (same version of Eclipse, with MinGW). However, I have (obviously) never come across this issue on an older version of Eclipse. (The snippet has a different prompt text..but you get the jist of it)
EDIT: also occurs with the gets() function (but gets, and scanf are obviously displayed in the correct sequence)