Во-первых, вы должны очистить память перед использованием.
Во-вторых, всегда держите один символ со значением NULL в конце строки. (только вариант для вашего случая, потому что вы не используете sprintf
, strcpy
... и т. д.)
В-третьих, цикл for
должен начинаться с конца входа, то есть strlen(input)
, который расположен на <string.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv) {
char input[100];
while(1) {
memset(input, 0, sizeof(input)); // add memset() to clear memory before using it
fgets(input, 100, stdin);
for(int i = strlen(input); i > -1; i--) {
printf("%c", input[i]);
}
printf("\n");
}
}