Escolher entre várias opções na linguagem C com else-if
A linguagem C dá-lhe uma série de maneiras de construir um programa que faz uma decisão. Se você precisa de algo acontecer somente quando um pré-requisito especial é cumprida, C oferece-lhe a E se palavra-chave. Se o seu programa precisa escolher entre dois caminhos, usando outro com o seu E se declaração lhe dá ainda mais opções.
Se o seu programa C precisa tomar uma decisão mais complicada, você pode usar outro E se. Por usar outroE se, Você pode ter várias E se declarações empilhados em cima uns dos outros, estreitando uma árvore de decisão complexo em alguns resultados possíveis:
#include int main () {float temp-printf ( "Qual é a temperatura lá fora?") - scanf ( "% f", temp) -se (temperatura lt; 65) {printf ( "My mas é um pouco frio fora! N") -} else if (temp> = 80) {printf ( "My mas é quente!") -} Else {printf ( "My quão agradável ! ") -} return (0) -}
Esta é uma maneira de lidar com múltiplas condições em C. Veja como funciona:
A primeira comparação é feita pela E se Na linha 9.
Se o valor da variável Temp é inferior a 65, essas declarações pertencentes a E se são executed- o restante da construção (linhas 13 a 20) é ignorada.
Quando a primeira comparação é falsa, a comparação é feita através else if Na linha 13.
Quando a comparação é verdadeira, as declarações pertencentes a else if são linhas executed- 17 a 20 (inclusive) são ignorados.
Finalmente, quando ambos E se e else if comparações são falsas, as declarações pertencentes a outro (Linha 17) são executados.
Quando você está realizando comparações múltiplas, é importante para obter o direito ordem. Muitas vezes, isso requer uma imagem visual, como a mostrada aqui, porque, se você não consegue visualizar as comparações e a forma como eles eliminam o resultado, o programa não faz o que você pretende. (Este é um tipo de "bug" do erro.)
Nesta ilustração, você pode ver como o primeiro E se declaração elimina quaisquer temperaturas inferiores a 65. A seguir, o else if declaração elimina todas as temperaturas de 80 e superiores. Quando você chegar à final outro, as temperaturas que permanecem são na gama de 65 a 79,99.
Agora vamos supor que alguém não estava pensando e as três declarações aparecem como mostrado na figura a seguir. Neste exemplo, é deixado para nada outro para representar, eo programa provavelmente produz uma resposta inadequada. (Note que o compilador não apontar este tipo de erro mental.)