Las estructuras de control en C son muy similares a las condiciones y bucles que hemos visto en pseudocódigo, cambiando ligeramente la notación empleada. Vamos a limitarnos a presentar su sintaxis en C: si desea información más detallada sobre su comportamiento, vea los artículos correspondientes a pseudocódigo (aquí).
if (condición)
{
acciones
} He aquí un pequeño ejemplo:
int a;
scanf("%i", &a);
if (a % 2 == 0)
{
printf("El número introducido es par");
} Observe que, en C, la condición debe escribirse entre paréntesis y que no se emplea la palabra “entonces”.
if (condición)
{
acciones-1
}
else
{
acciones-2
} Ejemplo:
int a;
scanf("%i", &a);
if (a > 0)
{
printf("El número es positivo");
}
else
{
printf("El número es negativo o cero");
}Vea cómo cada bloque tiene su propio inicio (símbolo { ) y su propio fin (símbolo } ). No hay nada equivalente al “end-if” de otros lenguajes (por eso tampoco lo usábamos en pseudocódigo)
switch (expresión)
{
case valor1: acciones-1;
break;
case valor2: acciones-2;
break;
case valor3: acciones-3;
break;
...
case valorN: acciones-N;
break;
default: acciones-si_no;
}Ahí va un ejemplo:
int a;
scanf("%i", &a);
switch (a)
{
case 1: printf("Enero");
break;
case 2: pritnf("Febrero");
break;
case 3: printf("Marzo");
break;
...etc...
case 12:printf("Diciembre");
break;
default:printf("Número incorrecto");
}Esta estructura presenta algunas peculiaridades, a saber:
•La expresión discriminante debe escribirse entre paréntesis y ser de un tipo ordinal (int, char o similar). No pueden usarse cadenas ni números reales.
•Los valores no pueden ser expresiones, sino constantes, es decir, números o caracteres fijos.
•¡Cuidado! Las acciones no son bloques de instrucciones, es decir, no van encerradas entre { y }. Eso quiere decir que, si se ejecutan las acciones-2, después se ejecutarán automáticamente las acciones-3, luego las acciones-4, etc. La forma de evitar esto es insertar la instrucción break al final de cada bloque de instrucciones.
Biblografia:http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Instrucciones_de_control
+6 extra. Es ANSI C con s.
ResponderEliminar