h não são bibliotecas, mas arquivos de cabeçalho onde, entre outras coisas, se encontram os protótipos das funções utilizadas. conio. h é para desenhar tela, e é para dos/windows (as funções do conio são úteis para manipular caracteres na tela, especificar cor de carácter e de fundo.)
getch() espera que o usuário digite uma tecla e retorna este caractere. ... Se a tecla pressionada for um caractere especial estas funções retornam zero. Neste caso você deve usar as funções novamente para pegar o código da tecla extendida pressionada. A função equivalente a getche() no mundo ANSI é o getchar().
getchar( ) lê um caracter do teclado. A função retorna o caracter lido, após convertê-lo para int. Quando digitado o dado, ele é armazenado em um buffer, até que seja digitado o retorno. getche( ) e getch( ) retornan um caracter assim que o mesmo seja digitado, ou seja não é aguardado até que seja digitado o retorno.
gets. ... char *gets (char *s); Pede ao usuário que entre uma string, que será armazenada na string s. O ponteiro que a função retorna é o próprio s.
A função fflush descarrega os buffers de saída de um fluxo de dados. Isto é, qualquer dado ainda não escrito no disco e guardado nos buffers temporários de saída, é escrito. ... Essa função deve ser utilizada apenas em fluxos que suportem saída de dados; ela não deve ser utilizada em fluxos de entrada (exemplo: stdin).
Existe uma função que faz o mesmo papel da scanf e é voltada para o uso com caracteres, é a getchar(). Ela é mais simples, pois não precisar usar %c ou &, como fazemos na scanf(), e foi feito especialmente para ser usado com caracteres. Para usar, fazemos: seu_caractere = getchar();
A função getchar() retorna um valor, o caractere lido (mais precisamente, o código inteiro ASCII correspondente ao caractere). Vejamos o que acontece quando um programa trivial é executado.
Simplesmente consuma a quebra de linha! Use scanf("%c\n", &c) . Ela vai repetitivamente ler o buffer de entrada até encontrar uma quebra de linha ou até que o buffer acabe. Ou seja, vai consumir toda a linha atual.
Esse caractere (enter), ficará armazenado no buffer do teclado (um memória temporária). Em seguida, noss programa em C pede para que algo seja armazenado na variável 'letra2'. Porém, antes do C receber um novo dado do usuário, ele checa se não tem mais alguma coisa armazenada no teclado (ele sempre faz isso...
Comando system("cls"); Limpando a tela Para utilizar o comando system("cls"); é necessário a declaração da biblioteca stdlib. h no início do programa. Sua função é limpar a tela de saída de programa que é executado no MS-DOS, ou seja, funciona como um "apagador" para tudo que já foi escrito.
Dito isto, parece que você está executando o programa num ambiente UNIX/Linux, então sugiro substituir "cls" por "clear", pois "cls" é a instrução de linha de comando do MS-DOS/Windows para limpar a tela. Usado em sistemas Windows.
Os jeitos de se pular linha no terminal é com Console. WriteLine() sem passar nenhum texto mesmo ou usar a string "\n". Esse segundo caso é mais usado quando vai imprimir um texto e você quer a quebra da linha no meio do texto.
Exemplo usando sleep(): O princípio de funcionamente é simples: um processo arma um alarme (via alarm()) e se posiciona em pausa (via pause()). Na chegada do sinal SIGALRM, pause() será interrompida e o processo termina sua execução.
Escreva, por exemplo, algo do tipo: