Si else en lenguaje C

condicional declaraciones se utilizan cuando se desea ejecutar código (conjunto de instrucciones) en ciertas condiciones. Supongamos que se desea imprimir los nombres oh aquellos empleados que tienen 5+ años de experiencia, en este tipo de situación que tendrá que utilizar una condición. Tal tipo de casos será manejado usando sólo condiciones.

Hay siguiente tipo de condiciones:

  1. simple si la condición
  2. si la condición else
  3. escalera (múltiple) si la condición
  4. anidada (si dentro de si) condición

1) si la condición simple

cuando se tiene un solo bloque (conjunto de instrucciones) que se basa en una condición es decir, cuando se tiene sólo una condición para comprobar, en el que se desea ejecutar un conjunto de instrucciones.

if( test-condition)
{
set-of-statements/if body;
}

Si el test-condición es verdadero (un valor no cero), set-de-declaraciones / si el cuerpo será ejecutado.

Considere el siguiente ejemplo – programa para controlar si el número introducido es negativo o positivo.

#include <stdio.h>
#include <stdlib.h>
int main()
{
int number;
printf("Enter an integer number:");
scanf("%d",&number);
if(number<=0)
{
printf("Number is either 0 or negative.");
exit(0);
}
printf("Entered number if positive, value is : %d",number);
return 0;
}

salida

First run:
Enter an integer number:-123
Number is either 0 or negative.
Second run:
Enter an integer number:0
Number is either 0 or negative.
Third run:
Enter an integer number:123
Entered number if positive, value is : 123

2) si la condición else

Este tipo de si se utiliza la condición, cuando se tiene una condición y dos cuerpos de código (dos conjunto de estados) para ejecutar sobre la base de un único condición.

if( test-condition)
{
True-block;
}
else
{
False-block;
}

Aquí, dos bloques, Verdadero bloque y Falso-bloque . Si prueba de resistencia al es verdadera (diferente valor cero), Verdadero bloque se ejecutará y si prueba de resistencia al es falsa, Falso-bloque se ejecutará.

Considere el siguiente ejemplo


#include <stdio.h>
int main()
{
int year;
printf("Enter year:");
scanf("%d",&year);
if( (year%400==0)||(year%100!=0 && year%4==0) )
{
printf("%d is a leap year",year);
}
else
{
printf("%d is not a leap year",year);
}
return 0;
}

salida

First run:
Enter year:1900
1900 is not a leap year
Second run:
Enter year:2015
2015 is not a leap year
Third run:
Enter year:2016
2016 is a leap year

3) si else .. si la condición (escalera / múltiple si las condiciones)

Este tipo de declaración si se utiliza cuando se tiene más de uno condiciones de prueba y los bloques a ejecutar.

if(test-condition1)
{
Block1;
}
else if(test-condition2)
{
Block2;
}
else if(test-condition3)
{
Block3;
}

else
{
Default-Block;
}

Aquí, prueba condición1 es cierto, Bloque1 se ejecutará, si es falsa por parte del programa de ejecución ejecuta prueba condición2 , si bien es cierto entonces Bloque2 ejecutará y así sucesivamente. Si ninguna de las condiciones es verdadera, Default -Block será ejecutado.

Considere el siguiente ejemplo


#include <stdio.h>
int main()
{
int num;
printf("Enter an integer number:");
scanf("%d",&num);
if(num==0){
printf("Number is ZERO");
}
else if(num>1)
{
printf("Nunber is POSITIVE");
}
else
{
printf("Number is NEGATIVE");
}
return 0;
}

salida

First run:
Enter an integer number:0
Number is ZERO
Second run:
Enter an integer number:123
Number is POSITIVE
Third run:
Enter an integer number:-234
Number is NEGATIVE

4) anidada (si está en si) si la condición

Este tipo de si se utiliza, cuando se desea comprobar otra condición dentro de si la condición del bloque, supongamos que hay dos condiciones, condición1 y condición2 y que quiere ejecutar condición2 si condición1 es cierto.

if( test-condition1)
{
Statements;
if(test-condition2)
{
Block-1;
}
else
{
Block2;
}
}
else
……

Aquí, prueba condición2 se ejecutará, si la prueba -condición1 es cierto.

Consideremos el siguiente ejemplo


#include <stdio.h>
int main()
{
char ch;
printf("Enter a character: ");
scanf("%c",&ch);
if( (ch>='A' && ch<='Z') || (ch>='a' && ch<='z'))
{
if( ch=='A'||ch=='E'||ch=='I'||ch=='O'||ch=='U'||
ch=='a'||ch=='e'||ch=='i'||ch=='o'||ch=='u')
{
printf("%c is a VOWEL",ch);
}
else
{
printf("%c is a CONSONANT",ch);
}
}
else
{
printf("%c is not a valid character",ch);
}
return 0;
}

salida

First run:
Enter a character: A
A is a VOWEL
Second run:
Enter a character: i
A is a VOWEL
Third run:
Enter a character: W
A is a CONSONANT
Fourth run:
Enter a character: 9
9 is not a valid character


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *