Vídeo: ? Linguagem C - Menu de opções (switch case) 2024
A linguagem C oferece uma série de maneiras de construir um programa que tome uma decisão. Se você precisa de algo para acontecer somente quando um pré-requisito particular for encontrado, C oferece a palavra-chave if. Se o seu programa precisar escolher entre dois caminhos, usar outro com sua declaração if dá-lhe ainda mais opções.
Se o seu programa C precisa tomar uma decisão mais complicada, você pode usar mais se. Ao usar mais se, você pode ter várias instruções if empilhadas uma sobre a outra, reduzindo uma árvore de decisão complexa em alguns resultados possíveis:
#include int main () {float temp; printf ("O que é a temperatura externa?"); scanf ("% f", & temp); se (temp = 80) {printf ("My but it's hot out!");} else {printf ("My how pleasant!");} return (0);}
Esta é uma maneira de lidar com múltiplas condições em C. Veja como funciona:
-
A primeira comparação é feita por se na linha 9.
Se o valor da temperatura variável for inferior a 65, essas declarações pertencentes a if são executadas; o resto da construção (linhas 13 a 20) é ignorado.
-
Quando a primeira comparação é falsa, a comparação é feita por mais, se na Linha 13.
Quando essa comparação for verdadeira, as declarações que pertencem a si, se são executadas; As linhas 17 a 20 (inclusive) são ignoradas.
-
Finalmente, quando ambos, se, e de outra forma, se as comparações forem falsas, as instruções pertencentes a outra (Linha 17) são executadas.
Quando você está realizando comparações múltiplas, é importante obter a ordem correta. Muitas vezes, isso requer uma imagem visual, como a mostrada aqui, porque, se você não pode visualizar as comparações e a forma como elimina o resultado, o programa não faz o que pretende. (Este é um tipo de erro "bug".)
Nesta ilustração, você pode ver como a primeira declaração if elimina quaisquer temperaturas inferiores a 65. Em seguida, a declaração else if elimina todas as temperaturas 80 e superiores. Quando você chegar ao último, as temperaturas que permanecem estão na faixa de 65 a 79. 99.
Agora presuma que alguém não estava pensando e as três declarações aparecem como mostrado na figura que se segue. Neste exemplo, nada mais resta para representar, e o programa provavelmente produz uma resposta imprópria. (Observe que o compilador não indica esse tipo de erro mental.)
Suas comparações podem produzir resultados ruins se você não tiver pensado completamente.