Username: Password:

.A função printf

Os nossos primeiros programas são necessariamente simples. Não possuem interface gráfica como a maioria das applicações que estamos habituados a usar (browser, processamento de texto, folha de calculo etc...). Vamos escrever programas que interagem principalmente com o terminal. O que é o terminal ? É um meio de interagir com o computador usando apenas o teclado. O terminal corre um programa que lê comandos escritos usando o teclado e executa-os. Em Unix/Linux esses programas de interacção são genericamente chamados «shell». Um exemplo de shell muito usado é o «bash».

O shell tem muitos usos mas no nosso caso será o meio de interação com os nossos programas. Podemos imaginar uma outra versão do programa de cálculo do IMC que pergunte ao utilizador o seu peso e a sua altura e calcula o valor do IMC correspondente. Neste caso a interação com programa será :

> ./imc
Qual é o seu peso ? 75
Qual é a sua altura ? 1.78
O seu Indice de Massa Corporal é : 23.671254

Pode ver o código de cores usado neste documento : O que é teclado pelo utilizador aparace em azul e o que é escrito pelo programa aparece em preto. O > que aparece na primeira linha representa o prompt. É uma cadeia de caracteres que o shell imprime para indicar ao utilizador que está a espera do proximo comando. Como o aspecto desta cadeia de caracteres é configurável, pode ter um aspecto diferente no seu computador.

Nesta secção estamos interessados em saber como fazer o programa escrever, ou seja como fazer aparecer o que está escrito em preto.

Num programa, a maneira a mais simples de escrever uma mensagem para o utilizador é usando a função printf. Esta função faz parte da biblioteca de funções de entradas e saídas do C. Como faz parte de uma biblioteca, é necessário indica-lo no inicio do programa com a linha seguinte:

#include <stdio.h>
Uma vez incluida esta linha, podemos usar a função printf em qualquer parte do programa. Para escrever a mensagem «Qual é o seu peso ?» basta a linha :
printf("Qual é o seu peso ?");
Para escrever um valor numérico, é um bocado mais complicado, é necessário colocar na frase, no sitio onde queremos que o valor aparece um código que indica o seu tipo. Por exemplo :
printf("O seu Indice de Massa Corporal é %f.", imc);

O código %f indica que o valor a imprimir é de tipo float ou double. Para imprimir um valor de tipo inteiro usa-se %d :

printf("%d vezes %d é igual à %d\n", a, b, a * b);
Neste exemplo, o programa vai escrever sucessivamente : o valor de a, a palavra « vezes », o valor de b, as palavras « é igual à » e o valor da expressão a * b. Finalmente o \n que representa aqui um caracter de fim de linha faz que a proxima mensagem aparacerá na linha seguinte.