Instead of the code reading the three char variables, it reads 2 and prints the 1st.
#include <stdio.h>
int main() {
char ch1, ch2, ch3;
puts("Digite 3 caracteres, um apos o outro:");
scanf("%c%c%c", &ch1, &ch2, &ch3);
printf("%c\n%c\n%c", ch1, ch2, ch3);
return 0;
}