Basically as the title says.. When my program is run from the console, it\'ll ask if you\'d like to encrypt or decrypt.. and when I input e or E, it creates a new blank line (un
The line scanf(" %c", &answer);
is leaving a newline
in the input buffer which is taken by fgets
. The leading space in " %c"
consumes leading whitespace but not trailing whitespace.
You can get rid of the newline
with the "%*c"
format specifier in scanf
which reads the newline
but discards it. No var argument needs to be supplied.
#include
int main(void)
{
char answer;
char text[50] = {0};
scanf(" %c%*c", &answer);
fgets(text, sizeof text, stdin);
printf ("%c %s\n", answer, text);
return 0;
}