Você está na página 1de 31

Linguagem de Programação

• Estruturas de controle de fluxo (seleção).


• Material: LP_Aula03
Grupo de comandos
Padrão ANSI

Seleção
Iteração
Desvio
Rótulo
Expressão
Bloco
Verdadeiro e Falso em C

Em C, ao contrário de muitas linguagens, um valor é


verdadeiro quando o valor for diferente de zero.

Um valor falso é  0.
Esse método simplifica a codificação de uma ampla gama
de rotinas.
Operadores Relacionais em C
Operadores Lógicos usados
em C
Comandos de seleção
if e switch
Comando if

Onde comando pode ser um único comando ou um bloco


de comandos ou nada. A cláusula else é opcional.
Se a expressão for diferente de ZERO é verdadeira o
comando ou bloco do if é executado, senão executa-se o
comando ou bloco do else.
Exemplo - 1

Note a ausência do else (opcional).


Exemplo – 2 (com else)
ifs Aninhados
Um if aninhado é um comando if que é o objeto de outro if
ou else.
São muito comuns em programação.
Um comando else sempre se refere ao comando if mais
próximo, que está dentro do mesmo bloco de else e não
está associado a outro if. Por exemplo:
Nota sobre níveis de
aninhamento

O Padrão C ANSI especifica que pelo menos 15 níveis de


aninhamentos devem ser suportados. Na prática a maioria
dos compiladores permite substancialmente mais.
Que tal melhorarmos o programa número mágico?
Exemplo - 3
A Escada if-else-if

Uma construção comum em programação é a forma if-


else-if. Sua forma geral:
As condições são avaliadas
de cima para baixo. Assim
que uma verdadeira é
encontrada, o comando
associado a ela é executado
e desvia do resto da escada.
Se nenhuma das condições
for verdadeira desvia-se para
o último else.
Exemplo - 4
O ? (Alternativo) [Operador
Ternário]
Você pode usar o operador ? Para substituir o comando if-
else na sintaxe:

• Contudo, os corpos de if e else não podem


ser comandos de C. Forma geral do ?
? [Exemplo]
If-else

Operador ?
Exemplo

O próximo programa usa o operador “?” para elevar ao


quadrado uma valor inteiro digitado pelo usuário. Contudo,
este programa preserva o sinal (10 ao quadrado = 100 e -
10 ao quadrado = -100).
Exemplo
Exemplo – 5 (Continuando número mágico)
Expressão condicional

Algumas vezes, os iniciantes em C se confundem pelo


fato de que você pode usar qualquer expressão válida
para controlar um if ou um ?.
Isto é, você não fica restrito a expressões envolvendo
operadores relacionais e lógicos (como em Pascal ou
Basic).
O que acontece ao executarmos
o programa abaixo?
Comando switch

Testa sucessivamente o valor de


uma expressão contra uma lista
de constantes inteiras ou
caractere. Quando o valor
coincide, os comandos
associados a àquela constante
são executados.

Forma geral do switch é:


Comando switch

O switch testa a variável e executa a declaração


cujo case corresponda ao valor atual da variável.
A declaração default é opcional e será executada apenas
se a variável, que está sendo testada, não for igual a
nenhuma das constantes.
O comando break, faz com que o switch seja
interrompido assim que uma das declarações seja
executada.
Exemplo
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
switch (num)
{
case 9:
printf ("\n\nO numero eh igual a 9.\n");
break;
case 10:
printf ("\n\nO numero eh igual a 10.\n");
break;
case 11:
printf ("\n\nO numero eh igual a 11.\n");
break;
default:
printf ("\n\nO numero nao eh nem 9 nem 10 nem 11.\n");
}
system("PAUSE");
return 0;
}
Bloco de Comandos

Você pode criar um bloco de código como um dos


comandos da sequencia.
Comandos switch aninhados
Você pode ter um switch como parte de uma sequencia de
comandos de um outro switch. Mesmo se as constantes
dos cases dos switchs interno e externo possuírem valores
comuns, não ocorrerão conflitos.
Exercícios para a prática
1) Escreva um programa que calcule e exiba
– o Salário Bruto,
– o Salário Líquido e
– o Imposto a Pagar
– de acordo com a seguinte regra:
2) Escreva um programa que leia um Salário Bruto e o
Estado Civil de uma pessoa e calcule e mostre o
Imposto a pagar obedecendo a seguinte regra: (s)
solteiros pagam 10% e (c) casados pagam 9% de
impostos.
3) Implemente um programa que calcule os aumentos
de um ordenado para o corrente ano. Se o ordenado
for > 1000 deve ser aumentado em 5%, se não deve
ser aumentado em 7%. Nota: use o operador ternário
(?).
4) Escreva um programa que calcule o imposto pago
por mulheres e por homens, sabendo-se que mulheres
pagam 10% de imposto sobre o salário e homens
pagam mais 5% do que as mulheres. Nota: use o
switch.
Prof. Me. Marcos Roberto de Moraes, o Maromo

FIM
Referências Bibliográficas

DAMAS, L. M. D. Linguagem C. LTC, 2007.


HERBERT, S. C completo e total. 3a. ed. Pearson, 1997.

Você também pode gostar