Comandos de Selecao (A02)
-
Upload
alenorato1985 -
Category
Documents
-
view
3 -
download
0
description
Transcript of Comandos de Selecao (A02)
-
Comandos de Seleo
-
Verdadeiro e Falso
Muitos comandos em C contam com um teste condicional
Uma expresso condicional chega a um valor verdadeiro ou falso
Em C, verdadeiro qualquer valor diferente de zero Falso zero.
-
Operadores relacionais e lgicos
Relacional refere-se s relaes entre valores
Lgico refere-se s maneiras que essas relaes podem ser conectadas
As expresses que usam operadores relacionais ou lgicos devolvem zero para falso e 1 para verdadeiro
-
Operadores relacionais e lgicosOperadores relacionais:
Operador Ao > Maior que >= Maior ou igual que < Menor que
-
Operadores relacionais e lgicos
Precedncia de operadores lgicos e relacionais:maior !
> >= < 1 + 12 o mesmo que 10 > ( 1 + 12), e o resultado falso
Outros exemplos (exemplo a02a):10 > 5 && ! ( 10 < 9) || 3
-
Comandos de controle do programa (de seleo)
Os comandos de controle do programa especificam a ordem na qual as instrues so executadas
Tais comandos dividem-se nos seguintes grupos: de seleo, de iterao e de desvio
Comandos de seleo: so o if e o switch
-
Comando if
Forma geral:if ( < expressao > )
< comando > ;[ else
< comando > ] ; < ... > - cdigo a ser fornecido; [ ... ] - cdigo opcional
comando pode ser o comando vazio (apenas um ;), um nico comando (sem necessidade de {}) ou um bloco de comandos (delimitado por {})
A clusula else opcional Exemplo a02b
-
Comando if
Ifs aninhados (exemplo a02c): if ( < expressao > ) {
if ( < expressao > ) < comando >;if ( < expressao > ) < comando >;else < comando >;
} else < comando >;
If-else-if (exemplo a02d) O operador ? pode ser utilizado para substituir
comandos if-else, desde que os corpos de if e elsesejam uma expresso simples (exemplo a02e):
< exp1 > ? < exp2 > : < exp3 > ;
-
Expresso condicional
Em C, pode-se utilizar qualquer expresso vlida para controlar o if ou o operador ?
No se fica restrito a expresses envolvendo os operadores relacionais e lgicos
O programa precisa simplesmente chegar a um valor zero ou diferente de zero
if ( b) printf ( "E diferente de 0!!!\n");
o mesmo que:if ( b != 0) printf ( "E diferente de 0!!!\n");
-
Comando switch
switch um comando de C para selees mltiplas
Ele testa, sucessivamente, o valor de uma expresso contra uma lista de constantes inteiras ou de caractere
Quando o valor coincide, os comandos associados quela constante so executados
A forma geral :
-
Comando switchswitch ( < expressao > ) {
case < constante1 >:< comandos > ;[ break;]
case < constante2 >:< comandos >;[ break;]
.
.default:
< comandos >;}
Exemplos a02f e a02g
-
Entrada de Dados - exemplos
Exemplo a02h
Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12