Entrada e Saída


O sistema de entrada e saída da linguagem C está estruturado na forma de uma biblioteca de funções.

Escrevendo Valores

A função printf é uma função da biblioteca padrão C que escreve valores. Ela pode receber diversos parâmetros, sendo que o primeiro deverá ser uma string. Cada especificador de formato encontrado nesta string é substituído pelo parâmetro seguinte na lista de argumentos. Tudo o que aparecer nesta string que não for um especificador de formato será impresso literalmente. A função printf está definida em stdio.h. Especificadores de Formato:

Formato Descrição
%d Número decimal
%ld Número decimal longo
%o Notação octal sem sinal
%x Hexadecimal sem sinal
%u Decimal sem sinal
%c Um único caracter
%s String
%e Notação científica
%f Ponto flutuante
%g O menor entre %e e %f
%p endereço de memória
%% imprime um %


Ex:

#include < stdio.h >
#include < conio.h >

void main(void)
{
char val_c = 'A'; /*inicializando a variável*/
int val_i = 100; /*inicializando a variável*/
double val_d = 50.5; /*inicializando a variável*/
char frase[]="COMPUTACAO"; /*inicializando a variável*/

clrscr(); /*função de limpar tela*/
printf("[%c] [%c] [%d]\n", val_c, val_c+1 ,val_c); /*imprime os valores das variáveis com seus respectivos formatos */
resultado = [A] [B] [65]

Lendo Valores

Para a entrada de dados (leitura de valores) em C, pode-se usar diversas funções, dependendo do tipo da variável que vai ser lida.

Função getche()

Usada para a entrada de variáveis char, lê um caracter e exibe na tela o caracter digitado. Está definida em conio.h

Ex:
letra = getche();

Função getch()

Usada para a entrada de variáveis char, lê um caracter e não exibe na tela o caracter digitado (entrada invisível). Está definida em conio.h

Ex:
letra = getch();

Função scanf()

Deve ser utilizada para a entrada de variáveis numéricas (int, float e double). O modo de utilizar é semelhante à função printf, porém colocar obrigatoriamente o símbolo & em frente ao nome da variável sendo lida. Está definida em stdio.h

Ex:
scanf("%d",&varint);/*obrigatório do uso do & comercial antes do nome da variável*/

Com a função scanf deve-se utilizar os seguintes especificadores de formato:

Formato Tipo
%d Int
%dl long int
%u unsigned int
%f Float
%lf Double


Função gets()

Usada para a entrada de string. Está definida em stdio.h : "gets(nome);"

Ex:
#include < stdio.h >
#include < conio.h >

void main(void)
{ /*início da declaração de variáveis*/
char varc;
int vari;
float varf;
char nome[80];
/*fim da declaração de variáveis*/

clrscr();
printf("Digite seu nome: ");
gets(nome);
printf("Digite um numero inteiro: ");
scanf("%d", &vari);
printf("Digite um numero real: ");
scanf("%f", &varf);
printf("Digite um caracter: ");
varc = getche();
printf("\n %s, você digitou %d, %f e %c", nome, vari, varf, varc);
getch();
}