C - declaração if ... else

A if declaração pode ser seguida por um opcional else instrução, que é executada quando a expressão booleana é falsa.

Sintaxe

A sintaxe de um if...else declaração na linguagem de programação C é -

if(boolean_expression) {
   /* statement(s) will execute if the boolean expression is true */
} else {
   /* statement(s) will execute if the boolean expression is false */
}

Se a expressão booleana for avaliada como true, então o if block será executado, caso contrário, o else block será executado.

A linguagem de programação C assume qualquer non-zero e non-null valores como true, e se for zero ou null, então é assumido como false valor.

Diagrama de fluxo

Exemplo

#include <stdio.h>
 
int main () {

   /* local variable definition */
   int a = 100;
 
   /* check the boolean condition */
   if( a < 20 ) {
      /* if condition is true then print the following */
      printf("a is less than 20\n" );
   } else {
      /* if condition is false then print the following */
      printf("a is not less than 20\n" );
   }
   
   printf("value of a is : %d\n", a);
 
   return 0;
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -

a is not less than 20;
value of a is : 100

Instrução If ... else if ... else

A if declaração pode ser seguida por um opcional else if...else , que é muito útil para testar várias condições usando uma única instrução if ... else if.

Ao usar instruções if ... else if..else, há alguns pontos a serem considerados -

  • Um if pode ter zero ou mais um e deve vir depois de qualquer outro if.

  • Um if pode ter zero a muitos else if's e eles devem vir antes do else.

  • Assim que um else if for bem-sucedido, nenhum dos else if's ou else's restantes serão testados.

Sintaxe

A sintaxe de um if...else if...else declaração na linguagem de programação C é -

if(boolean_expression 1) {
   /* Executes when the boolean expression 1 is true */
} else if( boolean_expression 2) {
   /* Executes when the boolean expression 2 is true */
} else if( boolean_expression 3) {
   /* Executes when the boolean expression 3 is true */
} else {
   /* executes when the none of the above condition is true */
}

Exemplo

#include <stdio.h>
 
int main () {

   /* local variable definition */
   int a = 100;
 
   /* check the boolean condition */
   if( a == 10 ) {
      /* if condition is true then print the following */
      printf("Value of a is 10\n" );
   } else if( a == 20 ) {
      /* if else if condition is true */
      printf("Value of a is 20\n" );
   } else if( a == 30 ) {
      /* if else if condition is true  */
      printf("Value of a is 30\n" );
   } else {
      /* if none of the conditions is true */
      printf("None of the values is matching\n" );
   }
   
   printf("Exact value of a is: %d\n", a );
 
   return 0;
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -

None of the values is matching
Exact value of a is: 100