viernes, 3 de abril de 2009

ESTRUCTURAS DE CONTROL



Sentencia if


La forma general de esta sentencia es:
if (expresion)
sentencia


Si la expresion es verdadera (valor distinto de 0), entonces se ejecuta sentencia.
La expresion debe estar entre paréntesis.
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 número es par:
int numero = 0, esPar= 0;
if ((numero % 2) == 0)
esPar = 1;










Sentencia if-else




La forma general de esta sentencia es:
if (expresion)
sentencia 1
else
sentencia 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 números:
float a, b, c, menor;
a=2; b=4; c=1;
if (a < menor =" a;" menor =" c;" menor =" b;" 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;
}

expresion devuelve un valor entero, pero también puede ser de tipo char.
exp1, ..., exp N representan expresiones constantes de valores enteros, aunque también pueden ser caracteres.
Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que decide si imprime la vocal dada:
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'');







Sentencia break






La sentencia break se utiliza para terminar la ejecución 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 más 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;

Inicialmente se ejecuta expresion 1, se hace para inicializar algún parámetro que controla la repetición del bucle.
expresion 2 es una condición que debe ser cierta para que se ejecute sentencia.
expresion 3 se utiliza para modificar el valor del parámetro.
El bucle se repite mientras expresion 2 sea cierto.
Si sentencia es compuesta se encierra entre { }.
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 numeros 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 evalúa expresion
Lo normal es que sentencia incluya algún elemento que altere el valor de expresion proporcionando así la condición 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 mayoría de las aplicaciones es mejor y más natural comprobar la condición antes de ejecutar el bucle, por ello se usa más la sentencia while.
Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que pide un número igual a 0:
int numero = 0;
do
{
printf("Introduce el número 0:\n");
scanf("%d", &numero); /* Se lee el numero */
} while (numero != 0);

0 Comments: