Operações de entrada e saída de dados (scanf, printf)
Na linguagem C a biblioteca que contém as funções responsáveis pela entrada e saída de dados do programa é a biblioteca <stdio.h> (standard input output). Quando se trata de imprimir um texto, número, valor de variável e etc, na tela a função mais simples e mais utilizada é a função printf( ).
→ Sintaxe da Função printf( )
printf(<texto>, <v1>, <v2>, …, <vN>);
Com a função printf( ) podemos imprimir uma mensagem ou um texto colocando ele na posição marcada por <texto>. Mas o texto deve estar sempre envolto por aspas duplas “Hello World”. Caso queira imprimir apenas um caractere (letra) ele deve estar envolto em aspas simples ‘x’.
Exemplos:
#include <stdio.h>
int main()
{
printf("Esta mensagem vai ser mostrada\n");
}
Desta forma a mensagem pode ser impressa diretamente na tela.
Obs: O caracter \n diz ao programa para pular uma linha após a impressão da mensagem.
→Especificadores de Formato
Podemos, também, imprimir os valores de variáveis utilizando a função printf( ), para isso teremos que utilizar um especificador de formato no local onde o usuário quer que o valor guardado em uma variável seja impresso. É importante perceber que especificador muda de acordo com o tipo de variável que será impressa na função, conforme a tabela abaixo:
Exemplos:
#include <stdio.h>
int main()
{
printf("Oi tudo bem? Tenho 6 anos e programo.\n");
printf("Valor inteiro: %d.\n", 10);
printf("Valor real: %f.", 3.14159265);
printf("Valor real com apenas 2 casas: %.2f\n", 3.14159265);
}
Obs: O especificador de formato deve ser precedido do caractere %, para que o programa diferencie o especificador de um caractere a ser impresso na mensagem.
→ Sequências de Escape
Existem, também, sequências de caracteres que irão passar informações e comandos para a função na hora de imprimir na tela do usuário. Estas sequências são conhecidas como sequências de escape, e passam informações como o comando de pular uma linha, adicionar uma tabulação horizontal ou vertical e até mesmo de imprimir caracteres que normalmente a função printf não exibe, como a contra-barra (\), ou aspas duplas ( ” ) ou simples ( ‘ ).
Função Scanf( )
Com a função scanf( ) é possível para o usuário inserir dados que serão armazenados pelo computador em varáveis.
→ Sintaxe
scanf(<form>, &<v1>, &<v2>,…,&<vN>);
Nos parâmetros, passados entre parêntesis, em primeiro lugar é colocado o especificador de formato do dado a ser digitado pelo usuário. No lugar do <form>, o especificador segue a mesma tabela da função printf( ) e também de ser usado entre aspas-duplas e precedido do caractere %, da seguinte forma: “%d” para números inteiros, “%f” para números com casas decimais.
A função scanf( ) é dependente de uma variável para guardar dados, portanto deve ser informado na chamada da função a variável que irá armazenar o dado inserido pelo usuário. A variável já tem que ter sido declarada anteriormente e seu tipo tem que ser compatível com o especificador de formato utilizado na chamada da função.
Exemplo:
#include <stdio.h>
int main()
{
int idade;
printf("Digite a sua idade: ");
scanf("%d", &idade);
printf("Você tem %d anos.\n", idade);
}
Obs: Repare que ao chamar a função scanf antes do nome da variável tem que ser colocado o caractere &, diferente da função printf.