Está en la página 1de 10

ESTRUCTURAS DE CONTROL EN LENGUAJE C

ING. HENRY GONZALEZ

ESTRUCTURAS DE CONTROL EN LENGUAJE C


Podemos clasificar cada una de las estructuras de control ms comunes en programacin en uno de los siguientes tipos: Secuencia: Ejecucin sucesiva de una o ms operaciones. Seleccin: Se realiza una u otra operacin, dependiendo de una condicin. Iteracin: Repeticin de una o varias operaciones mientras se cumpla una condicin

SENTENCIAS IF
La forma general de esta sentencia es: if (exprsion) sentencia. Si la expresion es verdadera (valor distinto de 0), entonces se ejecuta sentencia. La expresion debe estar entre parntesis. Si sentencia es compuesta tenemos: if (expresion) { sentencia 1 sentencia 2 . sentencia N } Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que decide si un nmero es par: int numero = 0, esPar= 0; if ((numero % 2) == 0)

SENTENCIAS IF-ELSE
La forma general de esta sentencia es: if (expresion) sentencia 1 else entencia 2. Si expresion es verdadera (valor distinto de 0), entonces se ejecuta sentencia 1; en caso contrario, se ejecuta sentencia 2. Si las sentencias son compuestas se cierran entre { }. Las sentencias pueden ser a su vez sentencias if-else. if (expresion 1) if (expresion 2) S1 else S2 else S3

Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que elige el menor de tres nmeros: float a, b, c, menor; a=2; b=4; c=1; if (a < b) { if (a < c) menor = a; else menor = c; } else { if (b < c) menor = b; else menor = c; }

SENTENCIA SWITCH
La forma general de esta sentencia es: switch (expresion) { case exp 1: sentencia 1; sentencia 2; break; case exp 2: case exp N: sentencia N; break; default: sentencia D; }

SENTENCIA SWITCH
expresion devuelve un valor entero, pero tambin puede ser de tipo char. exp1, ..., exp N representan expresiones constantes de valores enteros, aunque tambin pueden ser caracteres.
letra='e'; switch(letra); { case 'a': case 'A': printf(``Es la vocal a\n''); break; case 'e': case 'E': printf(``Es la vocal e\n''); break; case 'i': case 'I: printf(``Es la vocal i\n''); break; case 'o': case 'O': printf(``Es la vocal o\n''); break; case 'u': case 'U': printf(``Es la vocal u\n''); break; default: printf(``Es una consonante\n''); }

Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que decide si imprime la vocal dada:

SENTENCIA BREAK
La sentencia break se utiliza para terminar la ejecucin de bucles o salir de una sentencia switch. Es necesaria en la sentencia switch para transferir el control fuera de la misma. En caso de bucles anidados, el control se transfiere fuera de la sentencia ms interna en la que se encuentre, pero no fuera de las externas.

SENTENCIA FOR
La forma general de esta sentencia es:
for (expresion 1; expresion 2; expresion 3) sentencia;
1. Inicialmente se ejecuta expresion 1, se hace para inicializar algn parmetro que controla la repeticin del bucle. 2. expresion 2 es una condicin que debe ser cierta para que se ejecute sentencia. 3. expresion 3 se utiliza para modificar el valor del parmetro. 4. El bucle se repite mientras expresion 2 sea cierto. 5. Si sentencia es compuesta se encierra entre { }. 6. Si se omite expresion 2 se asumir el valor permanente de 1 y el bucle se ejecutar de forma indefinida (bucle infinito).

Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que calcula la suma de los nmeros del 1 al 100: int numero, suma; suma=0; for (numero=1; numero<=100; numero++) suma = suma + numero;

SENTENCIA WHILE
La forma general de esta sentencia es:

while (expresion) sentencia;


sentencia se ejecutar mientras el valor de expresion sea verdadero. Primero se evala expresion Lo normal es que sentencia incluya algn elemento que altere el valor de expresion proporcionando as la condicin de salida del bucle. Si sentencia es compuesta se encierra entre { }.

Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que calcula la suma de los numeros del 1 al 100:
int suma, limite; suma=1; limite=100; while(limite>0) { suma=suma+limite; limite--; }

SENTENCIA DO-WHILE La forma general de esta sentencia es:


do sentencia; while (expresion); sentencia se ejecutar mientras el valor de expresion sea verdadero. sentencia siempre se ejecuta al menos una vez. Si sentencia es compuesta se encierra entre { }. Para la mayora de las aplicaciones es mejor y ms natural comprobar la condicin antes de ejecutar el bucle, por ello se usa ms la sentencia while. Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que pide un nmero igual a 0:
int numero = 0; do { printf("Introduce el nmero 0:\n"); scanf("%d", &numero); /* Se lee el numero */ } while (numero != 0);

También podría gustarte