After fgets(str1,10,stdin); do
while((c = getchar()) != '\n' && c != EOF);
This will clear the input buffer after reading "str1".
So your code should be
#include <stdio.h> int main() { char str1[10]; char str2[10]; int c; str1[0]=0; str2[0]=0; fgets(str1,10,stdin); if( (str1[0]!=0) && (!strrchr(str1,'\n')) ) while((c = getchar()) != '\n' && c != EOF); fgets(str2,10,stdin); puts(str1); puts(str2); return 0; }
source share