A maior rede de estudos do Brasil

Grátis
347 pág.
LINGUAGEM C

Pré-visualização | Página 19 de 50

como devem ser escritos e as ações que executam. 
 
 
 
1. COMANDO DE ATRIBUIÇÃO 
O comando de atribuição ou simplesmente atribuição, é a principal maneira de armazenar 
uma informação numa variável. Sua sintaxe é: 
 
nome_da_variável = expressão; 
 
 
71 
 
 
 
Exemplos: 
nome = “Genoveva”; preco = 15.85; 
 quant = 5; total = preco * quant; 
 
O modo de funcionamento (semântica) de uma atribuição consiste: 
1. na avaliação da expressão 
2. no armazenamento do valor resultante na variável que aparece à esquerda do comando. 
A seguir temos um exemplo de um algoritmo utilizando o comando de atribuição: 
 
1. #include<stdio.h> 
2. #include<stdlib.h> 
3. int main() 
4. { 
5. float preco_unit, preco_tot; 
6. int quant; 
7. preco_unit = 5.0; 
8. quant = 10; 
9. preco_tot = preco_unit * quant; 
10. printf(“Preço total = %f\n”,preco_tot); 
11. return 0; 
12. } 
 
 
 
2. COMANDOS DE SAÍDA DE DADOS 
Os comandos de saída de dados são o meio pelo qual informações contidas na memória 
dos computadores são colocadas nos dispositivos de saída, para que os usuários possam apreciá-
las. 
Em linguagem de programação C, uma das funções responsáveis por essa operação é 
printf(). 
 
 
2.1. PRINTF() 
A função printf() é uma das funções de saída/escrita de dados da linguagem C. Seu 
nome vem da expressão em inglês print formatted, ou seja, escrita formatada. Basicamente, a 
função printf() escreve na saída de vídeo (monitor) um conjunto de valores, caracteres e/ou 
sequência de caracteres de acordo com o formato especificado. 
 
Saída: 
Preço total = 50.000000 
72 
 
 
 
A sintaxe básica da função é: 
 
printf(“texto”); 
ou 
printf(“expressão_de_controle”, lista_de_argumentos); 
 
A função printf() pode ser usada quando queremos escrever apenas um texto simples 
na tela, ou ainda pode receber dois parâmetros de entrada: 
 “expressão de controle”: conjunto de caracteres que especifica o formato dos dados a 
serem escritos e/ou o texto a ser escrito; 
 lista de argumentos: conjunto de nomes de variáveis, separados por vírgula, que serão 
escritos. 
 
Quando queremos escrever dados formatados na tela usamos a segunda sintaxe básica 
apresentada, a qual possui a expressão de controle. Ela especifica o formato de saída dos dados 
que serão escritos pela função. Cada formato de saída é precedido por um sinal de % e um código 
de controle deve ser especificado para cada variável a ser escrita. Assim, se quiséssemos escrever 
uma única expressão com o comando printf(), a sintaxe correta seria: 
 
 
printf(“%código”, expressão); 
 
 
Se fossem duas as expressões a serem escritas, a sintaxe correta seria: 
 
 
printf(“%código1 %código2”, expressão1, expressão2); 
 
 
E assim por diante. Note que os formatos e as expressões a serem escritas com aquele 
formato devem ser especificados na mesma ordem, como mostrados pelas setas acima. 
Diferente do comando scanf(), o comando printf() não exige o símbolo & na frente 
do nome de uma variável que será escrita na tela. Se usado, ele possui outro significado e não 
exibe o conteúdo da variável. 
73 
 
 
 
A função printf() pode ser usada para escrever virtualmente qualquer tipo de dado. A 
tabela abaixo mostra alguns dos tipos de saída suportados pela linguagem e seus respectivos 
códigos de controle: 
 
Código 
Tipo de 
argumento 
Descrição 
%d int valor inteiro decimal 
%i int valor inteiro decimal 
%o int valor inteiro octal 
%x int valor inteiro hexadecimal 
%X int valor inteiro hexadecimal 
%u int valor inteiro decimal sem sinal (unsigned int) 
%c char 
um caractere em formato ASCII (código binário 
correspondente) 
%s char uma cadeia de caracteres (string) terminada em “\0” 
%f float 
valor em ponto flutuante no formato [-]m.dddddd, onde o 
número de casas decimais é dado pela precisão (padrão é 6) 
%e float ou double 
valor em ponto flutuante em notação exponencial no formato 
[-]m.ddddd e±xx, onde o número de casas decimais é dado 
pela precisão 
%E float ou double 
valor em ponto flutuante em notação exponencial no formato 
[-]m.ddddd E±xx, onde o número de casas decimais é dado 
pela precisão 
%g float ou double 
valor em ponto flutuante no formato %e (quando o expoente 
for menor que -4 ou igual a precisão) ou %f (nos demais 
casos); zeros adicionais e um ponto decimal final não são 
impressos 
%G float ou double 
valor em ponto flutuante no formato %E (quando o expoente 
for menor que -4 ou igual a precisão) ou %f (nos demais 
casos); zeros adicionais e um ponto decimal final não são 
impressos 
%% - exibe o caracter “%” 
 
Observe abaixo alguns exemplos de escrita de dados utilizando o comando printf(). 
 
74 
 
 
 
1. #include<stdio.h> 
2. #include<stdlib.h> 
3. int main() 
4. { 
5. int x = 10; 
6. printf(“%d\n”,x); 
7. float y = 5.0; 
8. printf(“%d%f\n”,x,y); 
9. printf(“%d %f\n”,x,y); 
10. return 0; 
11. } 
 
No exemplo acima, os comandos nas linhas 08 e 09 imprimem os mesmos dados, mas o 
segundo os separa com um espaço em branco, como pode ser observado na saída. Isso ocorre por 
que o comando printf() aceita textos junto aos códigos de controle. Pode-se adicionar texto 
antes, depois ou entre dois ou mais códigos de controle. 
Observe: 
 
 
printf(“texto %código texto”, expressão); 
 
Junto ao código de controle, pode-se adicionar texto e não apenas espaços em branco, 
conforme mostrado no exemplo abaixo: 
 
1. #include<stdio.h> 
2. #include<stdlib.h> 
3. int main() 
4. { 
5. int x = 10; 
6. printf(“Total = %d\n”,x); 
7. printf(“%d caixas!\n”,x); 
8. printf(“Total de %d caixas!!!n”,x); 
9. return 0; 
10. } 
 
Isso permite que o comando printf() seja usado para escrever não apenas dados, mas 
sentenças que façam sentido para o usuário do programa. Isso é um requisito fundamental na 
construção e implementação de interfaces em um programa amigo do usuário. 
 
 
 
Saída: 
10 
105.000000 
10 5.000000 
Saída: 
Total = 10 
10 caixas! 
Total de 10 caixas!!! 
75 
 
 
 
2.2. PUTCHAR() 
A função putchar() – put character – permite escrever um único caractere na tela. A 
sintaxe geral dessa função é a seguine: 
 
 putchar(variável); 
 
A função putchar() recebe como parâmetro de entrada um único valor inteiro. Esse 
valor será convertido para caractere e mostrado na tela. A função retorna, caso não ocorra 
nenhum erro, o próprio caractere que foi escrito e, caso ocorra algum erro, a constante EOF 
(definida no arquivo-cabeçalho stdio.h) é retornada. 
Observe o exemplo abaixo: 
 
1. #include <stdio.h> 
2. #include <stdlib.h> 
3. int main() 
4. { 
5. char c = ‘a’; 
6. int x = 65; 
7. putchar(c); 
8. putchar(‘\n’); 
9. putchar(x); 
10. putchar(‘\n’); 
11. return 0; 
12. } 
 
Perceba, no exemplo acima, que a conversão na linguagem C é direta no momento da 
impressão, ou seja, o valor 65 é convertido para o caractere ASCII correspondente, no caso, o 
caractere “A”. Além disso, o comando putchar() também aceita o uso de sequências de escape 
como o caractere ‘\n’ (nova linha). 
 
 
2.3. PUTS() 
A função puts() – put string – apresenta na tela a string passada como argumento, 
seguida de uma nova linha (\n). Ela retorna um valor não negativo se houver sucesso no processo 
ou, caso contrário, retorna EOF. A sintaxe básica dessa função é a seguinte: 
 
puts(string); 
 
Saída: 
a 
A 
76 
 
 
 
Esta função reconhece os mesmos caracteres especiais de escape que a função printf(). 
Entretanto, uma chamada à função puts() requer