Buscar

Rota de Aprendizagem Aula 02

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

1 
 
Rota de Aprendizagem – Aula 2 
Funções de Entrada e Saída 
Nesta rota de aprendizagem serão apresentadas as funções de entrada e 
saída que serão utilizadas nas demais aulas e na resolução dos exercícios. 
Função printf() 
A função printf() é uma das funções de entrada e saída (E/S) que podem ser 
utilizadas em linguagem de programação C. Porém, esta não faz parte da 
definição da linguagem C, sendo incluída na biblioteca stdio.h conforme visto 
na aula anterior. 
Esta função tem como objetivo apresentar na tela uma expressão definida pelo 
usuário, e para isto é necessário que siga a seguinte sintaxe 
printf (“expr. de controle”, argumento1, argumento 2, ....); 
onde a expressão de controle é uma expressão definida, que pode ser 
apresentar alguns códigos, conforme ilustra a Tabela 1. Quando a função 
printf() encontra um desses códigos, ela o substitui pelo argumento fornecido, 
ou seja, estes argumentos podem ser nenhum ou quantos forem necessários. 
Tabela 1. Strings ou Expressões de Controle 
 
2 
 
Além das expressões de controle, também é possível utilizar na sintaxe da 
função printf() códigos especiais que permitem que melhor visualização na tela 
do usuário, conforme ilustra a Tabela 2. 
Tabela 2. Exemplos de códigos especiais 
 
Como exemplos da função printf() pode-se apresentar as seguintes linhas de 
comandos: 
 printf( “Linguagem de Programação C.”); 
 Saída na tela do usuário: Linguagem de Programação C. 
 printf( “Esta aula tem %d temas.\n”, 3); 
 Saída na tela do usuário: Esta aula tem 3 temas. 
 printf( “Nome: %s\nSexo: %c\nIdade: %d\n”, “João”, ‘M’, 25); 
Saída na tela do usuário: 
 Nome: João 
 Sexo: M 
 Idade: 25 
 
Exemplos utilizando toda a estrutura básica de um programa desenvolvido em 
linguagem C é visualizado na sequência. 
 
3 
 
#include <stdio.h> 
main() 
{ 
 char letra; 
 letra = ‘A’; 
 printf (“%c”, letra); 
} 
 
Função scanf() 
Outra função de entrada e saída que podem ser utilizadas na linguagem de 
programação C é a função scanf(). Esta função lê do teclado dados e coloca os 
valores digitados pelos usuários nas variáveis utilizadas como parâmetros da 
função, conforme ilustra a sintaxe 
scanf(“expressão de controle”, &argumento1, &argumento2, ...); 
onde a expressão de controle utiliza os mesmos códigos da função printf() 
mostrados na Tabela 1. 
O operador de endereço (&), que precede os argumentos da função, retorna o 
primeiro byte ocupado pela variável na memória do computador. Exemplos de 
programas utilizando as funções de entrada e saída são ilustrados abaixo. 
 
#include <stdio.h> 
main() 
{ 
 int idade; 
 scanf (“%d”, &idade); 
 printf (“ A idade lida eh %d”, idade); 
} 
 
 
 
#include <stdio.h> 
main() { 
 int num1, num2, sub; 
 printf (“Digite o primeiro número:\n ”); 
 scanf (“%f”, &num1); 
 printf (“Digite o segundo número:\n ”); 
 scanf (“%f”, &num2); 
4 
 
 sub = num1 – num2; 
 printf(“O resultado da subtração é %d”, sub); 
} 
 
Comandos de Controle de Fluxo 
Comandos de controle de fluxo em linguagem de programação possibilitam ao 
programador alterar a sequência de execução do programa. Dentre estes 
comandos podemos citar o condicional simples, condicional composto e o 
case. 
Condicional Simples - IF 
Este comando condicional somente é executado se a sua condição for 
verdadeira, conforme descreve sua sintaxe 
 
if (condição) 
 printf(comando); 
 
O exemplo que segue ilustra um programa utilizando o condicional simples – IF 
com o objetivo de verificar se a soma de dois números é menor que o terceiro 
número lido. 
#include<stdio.h> 
int n1, n2, n3; 
main() 
 { 
 printf(“\n Digite três números:”); 
 scanf(“%d%d%d”, &n1, &n2, &n3); 
 if ((n1 + n2 < n3)) 
 printf (“A soma dos números é menor que n3”); 
} 
 
Condicional Composto – IF – ELSE 
5 
 
Neste controle de fluxo se a condição for verdadeira, será executado o 
comando 1; caso contrário, se a condição for falsa, será executado o comando 
2, conforme sintaxe. 
 
if condição 
 printf(comando) 
else 
 printf(comando); 
 
O exemplo do programa que segue ilustra a comparação se a soma de dois 
números lidos são menores que o terceiro lido, caso contrário será maior. 
#include<stdio.h> 
int n1, n2, n3; 
main() { 
 printf(“\n Digite três números:”); 
 scanf(“%d%d%d”, &n1, &n2, &n3); 
 if ((n1 + n2 < n3)) 
 printf (“A soma dos números é menor que n3”); 
 else 
 printf(“A soma dos números é maior que n3”); 
} 
É importante lembrar que a instrução que antecede o comando ELSE deve 
sempre terminar com o ponto e virgula (;). Caso isso não ocorra haverá um erro 
de compilação. 
Case – SWITCH 
Esta instrução adapta-se particularmente à tomada de decisões em que o 
número de possibilidades elevado (em geral maior que 2, se não usa-se o if-
else), de forma a reduzir a complexidade de if-else consecutivos e aninhados. 
Sintaxe: 
switch (variável/expressão) 
 { 
 case valor1: lista de comandos; 
 break; 
 case valor1: lista de comandos; 
 break; 
6 
 
 ........ 
 default: lista de comandos; 
 } 
 
Em alguns programas existem comandos que são mutuamente exclusivos, ou 
seja, se um comando for executado, os demais não serão. 
 
Operadores 
Quando se desenvolve utilizando condições muitas vezes faz-se necessário o 
uso de operadores lógicos, aritméticos e relacionais para que possíveis 
combinações sejam realizadas. 
Os operadores aritméticos são os seguintes: + (adição), * (multiplicação) e / 
(divisão). No caso da divisão entre os números inteiros, o resultado é truncado, 
ou seja, exato. Para que se possa trabalhar com o resto da divisão é 
necessário que seja utilizado o operador %, conforme ilustra o exemplo. 
Expressão Tem o valor 
22 / 3 7 
22 % 3 1 
Além dos três operadores citados acima, pode-se trabalhar na linguagem de 
programação C com os operadores de incremento e decremento (operadores 
unários). Operadores unários ++ e – são utilizados para fazerem diretamente 
estas operações sem a necessidade do comando de atribuição. 
i = i + 1; i++; 
i = i - 1; i--; 
Na linguagem C os operadores relacionais são: == (igual a), != (diferente de), > 
(maior que), < (menor que), >= (maior ou igual a ) e <= (menor ou igual a ). O 
7 
 
resultado de dois valores conectados por um operador relacional será 0 para 
falso ou 1 para verdadeiro, conforme exemplo. 
Expressão Tem o valor 
5 < 3 0 
5 > 3 1 
5 == 5 1 
5 != 1 1 
3 == 5 0 
Os operadores lógicos binários são && (e) e || (ou). O resultado de suas 
operações também será 0 (falso) ou 1 (verdadeiro). 
Expressão Tem o valor 
5 || 3 1 
5 || 0 1 
5 && 3 1 
(i >5) && (i<=7) 1 se i for maior que 5 e menor ou 
igual a 7 0 qualquer outro caso 
O operador de negação (!) inverte o sentido do valor que o segue. Ou Seja, 
qualquer valor não zero será convertido para 0 e o valor 0 será convertido para 
1. 
Expressão Tem o valor 
!5 0 
!0 1 
 
Comandos de Repetição 
8 
 
Os comandos de repetição na linguagem C são definidos em três tipos, saber: 
while, do while e for. 
While 
A instrução while (também conhecida como laço while) executa uma instrução 
ou bloco de instruções enquanto uma determinada condição for verdadeira. 
Esta instrução sempre testa a condição no início do código. A sintaxe é: 
while (condição) 
 comando; 
 
Exemplo: 
#inlcude<stdio.h> 
main() 
{ 
 int numero; 
 printf(“Digite um número (diferente de zero): “); 
 scanf(“%d”, &numero); 
 while (numero == 0) 
 { 
 printf(“Inválido. Digite novamente: “); 
 scanf (“%d”, &numero); 
 }printf(“Número válido!!!”); 
} 
Do – While 
9 
 
Esta instrução teste a condição no final do comando, isto é, os comados 
internos ao laço são executados pelo menos uma única vez. 
Sintaxe: 
do { 
 comando; 
} while (condição) 
 
Exemplo: 
 
#include <stdio.h> 
void main() 
{ 
 int num; 
 do 
 { 
 printf(“Digite um número: ”); 
 scanf(“%d”, &num); 
 } while (num == 0); 
 printf (“Ok. Número válido”); 
} 
 
For 
A instrução for (ou laço for, como é verdadeiramente conhecida), adapta-se 
particularmente a situação em que o número de iterações é conhecido a priori. 
A sintaxe do laço for é definida como segue: 
10 
 
for (inicialização; condição; incremento) declaração; 
O seu funcionamento pode ser resumido da seguinte forma: 
- O código presente em inicialização é executado. Normalmente são iniciadas 
as variáveis presentes no laço. Esse componente do laço é executado apenas 
uma única vez. 
- A condição é avaliada. 
- Se o resultado da condição retornar o valor Falso (zero), então o laço for 
termina e o programa continua na instrução imediatamente seguinte. 
- Se o resultado da condição retornar o valor Verdadeiro, então o laço for 
executada a instrução (ou bloco de instruções ) do laço. 
- Depois de executada a instrução presente no laço, é executado o 
incremento. Nesse componente do laço for são normalmente realizadas as 
alterações necessárias para passar à próxima iteração do laço (incremento ou 
decremento de variáveis etc). 
Exemplo de código utilizando o laço for: 
#include<stdio.h> 
int main() 
{ 
 int count; 
 for (count=1; count<=100; count ++) 
 printf (“%d”, count); 
} 
 
Síntese da rota: 
11 
 
- As funções de entrada e saída que são utilizadas na linguagem de 
programação C são printf() e scanf(). 
- Ambas funções podem utilizar expressões de controle que são úteis 
para substituírem o argumento da variável. 
- Na linguagem C pode-se utilizar comandos condicionais, possibilitando 
ao usuário criar condições e combinações destas condições na 
resolução de seus problemas. As condições são if, if-else e switch. 
- Para que essas condições possam ser combinadas entre si operadores 
aritméticos, lógicos e relacionais são utilizados. 
- Além dos condicionais a linguagem possibilita que comandos possam 
ser repetidos uma única vez ou mais vezes de acordo com a 
necessidade do código. Para isso são utilizados os comandos while, do 
while e for. 
 
Referencia da rota: 
http://www.dainf.ct.utfpr.edu.br/~pbueno/Arquivos/ApostilaEricoLisboa.pdf 
Damas, Luis – Linguagem C / Luís Damas: tradução João Araújo Ribeiro, 
Orlando Bernardo Filho. – 10. Ed. – [Reimpr.]. – Rio de Janeiro: LTC, 2013.

Outros materiais