Imbriquer des alternatives
La syntaxe donnée pour l'alternative permet bien sûr d'imbriquer des alternatives, en voici un exemple:
if (temperature > 75)
    afficher ("Danger d'explosion");  
/* cas ou temperature > 75 */
else                                              
/* cas ou temperature <= 75 */
    if (temperature > 55)    

       afficher ("alerte");                  
/* temperature <= 75 et > 55 */
    else
       afficher ("régime normal");      
/* temperature <= 75 et <= 55 */     
/* fin du if (temperature > 55) */
/* fin du if temperature > 75 */

1) Il n'y a pas besoin d'un bloc pour le else de temperature > 75 car même si elle est longue il n'y a qu'une seule instruction: le if (temperature > 55) ..... 


2) N'oubliez pas de marquer les if avec des commentaires (avec un commentaire de fin de if).

Ambiguïté du else: Le else étant facultatif, il peut y avoir une ambiguïté s'il y a moins de else que de if. En fait, un else se rapporte toujours au if non terminé (c'est à dire à qui on n'a pas encore attribué de else) le plus proche. Pour terminer un if vous pouvez mettre un else vide (else ;) ou mettre des accolades.
exemples :
if (temperature <= 75)
  if (temperature > 55)
     afficher("Temperature comprise entre 75 et 56");
  else
     afficher("Température inférieure à 56");    
/* c'est le else de temperature > 55 */
if (temperature <= 75)
  if (temperature > 55)
     afficher("Temperature comprise entre 75 et 56");
  else ;  

else
            /* c'est le else de temperature <= 75 */
  afficher("Température supérieure à 75");    
if (temperature <= 75)
{
  if (temperature > 55)
     afficher("Temperature comprise entre 75 et 56");
}

else
            /* c'est le else de temperature <= 75 */
  afficher(Température supérieure à 75");    

suivant     plan