Linguagem de Programação C, Ch.1 Exercício 1.10 (Getchar e Putchar)
Estou trabalhando nisso há 2 horas e estou preso ... Encontrei a resposta on-line, mas isso não vai me ajudar a aprender o conceito de que obviamente estou sentindo falta.
Pronto: Escreva um programa para copiar sua entrada para sua saída, substituindo cada guia por\t
, cada backspace por\b
e cada barra invertida por\\
. Isso torna as guias e os backspaces visíveis de maneira inequívoca.
Aqui está o que eu criei, ele não substitui umtab
ou\
com o indicadoputchar
, apenas adiciona na frente dele (não fiz backspace porque não posso realmente inserir um backspace ...):
É assim que eu leio o código. O que estou perdendo?:
"Existe algum número inteiroc
. c
é igual à entrada. Quando a entrada não for igual ao final do arquivo, continue. Se a entrada for tab, a saída\t
. Se a entrada for\
então saída\\
. Envie a entrada para o console ".
int c;
while((c=getchar())!=EOF)
{
if(c=='\t')
{
putchar('\\');
putchar('t');
}
if(c=='\\')
{
putchar('\\');
putchar('\\');
}
putchar(c);
}