scanf()
reads exactly what you asked it to, leaving the following \n
from the end of that line in the buffer where fgets()
will read it. Either do something to consume the newline, or (my preferred solution) fgets()
and then sscanf()
from that string.