Inicio | Artículos | Biografías | Cursos | Entrevistas | Frases | Libros | Diccionario | Presentaciones | Servicios | Videos | Mapa Web | Enlazar | Contactar | Acerca de


CURSO/TUTORIAL DE LENGUAJE C
Introducción
Introducción
Fases de la Puesta a Punto de un Programa en C
Estructura de un Programa
Tipos de Instrucciones
Mi primer Programa
Elementos Básicos
Tipos de Datos
Identificadores
Variables
Constantes
Operadores y Expresiones
Funciones printf y scanf
Comentarios
La Función fflush
Tipos de Errores
Instrucciones de Control
Instrucciones Alternativas
Instrucciones Repetitivas
Instrucciones De Salto
CarlosPes.comCurso de Lenguaje C > Instrucción continue en Lenguaje C

Instrucción continue en Lenguaje C

¿Para qué sirve la instrucción continue en C?

En lenguaje C, para escribir una instrucción de salto continue (continuar), se utiliza la sintaxis:
continue;
La instrucción de salto continue siempre se usa para interrumpir (romper) la ejecución normal de un bucle. Sin embargo, el control del programa no se transfiere a la primera instrucción después del bucle (como sí hace la instrucción break, véase el apartado anterior Instrucción break en C), es decir, el bucle no finaliza, sino que, finaliza la iteración en curso, transfiriéndose el control del programa a la condición de salida del bucle, para decidir si se debe realizar una nueva iteración o no.

Por tanto, la instrucción
continue finaliza (termina) la ejecución de una iteración de un bucle, pero, no la ejecución del bucle en sí. De forma que, la instrucción continue salta (no ejecuta) las instrucciones que existan después de ella, en la iteración de un bucle.

Ejemplo 1: En el programa siguiente se muestra como se puede utilizar la instrucción continue:
#include <stdio.h>

int main()
{

   int n, a;

   a = 0;
   do
   {
     printf( "Introduzca un numero entero: " );
     scanf( "%d", &n );

     if ( n == 0 )
     {
      printf( "ERROR: El cero no tiene opuesto.\n" );
      continue;
      /* En el caso de que n sea un cero,
         la iteración en curso del bucle
         se interrumpe aquí. */
     }
     printf( "El opuesto es: %d\n", -n );
     a += n;
   } while ( n >= -10 && n <= 10 );

   printf( "Suma: %d", a );

   return 0;
}
El código del programa es el mismo que el del ejemplo 1 del apartado anterior, Instrucción break en C, excepto por la instrucción break, que ha sido sustituida por la instrucción continue. El programa puede ser la solución para el problema siguiente, el cual se diferencia del ejemplo 1 del apartado anterior en que si el usuario introduce un cero, el bucle no deja de iterar.

Diseñe el agoritmo de un programa que:

1º) Pida por teclado un número (dato entero).
2º) Si el número introducido por el usuario es distinto de cero, muestre por pantalla el mensaje:

"El opuesto  es: <-número>".

En caso contrario, muestre el mensaje:

"ERROR: El cero no tiene opuesto.".

3º) Repita los pasos 1º y 2º, mientras que, el usuario introduzca un número mayor o igual que -10 y menor o igual que 10.
4º) Muestre por pantalla la suma de los números introducidos por el usuario.

En pantalla:

   Introduzca un número entero: 2

   El opuesto es: -2

   Introduzca un número entero: 0

   ERROR: El cero no tiene opuesto.

   Introduzca un número entero: -59

   El opuesto es: 59

   Suma: -57
La traza del programa es:
Traza programa uso de continue
Traza programa uso de continue
La instrucción continue se ejecuta cuando el usuario introduce un cero, interrumpiendo la iteración en curso; pero, el bucle solamente finaliza cuando la condición ( n >= -10 y n <= 10 ) sea falsa.

Normalmente, al igual que ocurre con la instrucción
break, cuando en un bucle se utiliza una instrucción continue, la ejecución de ésta también se condiciona.

En el ejemplo 1, la iteración en curso del bucle se interrumpe si es verdadera la condición (
n = 0 ).

Ejemplo 2: No obstante, el problema también se puede resolver sin hacer uso de la instrucción continue:
#include <stdio.h>

int main()
{

   int numero, acumulador;

   acumulador = 0;
   do
   {
     printf( "Introduzca un numero entero: " );
     scanf( "%d", &numero );

     if ( numero == 0 )
     {
      printf( "ERROR: El cero no tiene opuesto.\n" );
     }
     else
     {
      printf( "El opuesto es: %d\n", -numero );
      acumulador += numero;
     }

   } while ( numero >= -10 && numero <= 10 );

   printf( "Suma: %d", acumulador );

   return 0;
}
Los resultados por pantalla de este programa son idénticos a los del algoritmo anterior.
Artículos Interesantes
Artículos de Desarrollo Web
Artículos de Informática
Artículos de Programación
Artículos de SEO
Cursos/Tutoriales de Informática
Curso/Tutorial de Algoritmos
Curso/Tutorial de Informática Básica
Curso/Tutorial de Ingeniería del Software
Curso/Tutorial de Lenguaje C
Curso/Tutorial de Marketing en Internet
Curso/Tutorial de Turbo Pascal
Curso/Tutorial de Representación de los Datos
Curso/Tutorial para Webmasters
Curso/Tutorial Web 2.0
Curso de SEO
Libros de Carlos Pes
36 Pasos Básicos para Desarrollar un Sitio Web
Empezar de Cero a Programar en Lenguaje C
Fundamentos del SEO
Libros Recomendados
Libros de Analítica Web
Libros de Desarrollo Web
Libros de Java
Libros de Lenguaje C
Libros de Marketing Online
Libros de Pascal (Turbo Pascal)
Libros de SEO
Libros de Visual Basic
Recursos de Informática
Diccionario de Informática
Ejercicios de Programación
Guías de uso de Software
Sintaxis de Lenguajes de Programación
Biografías
Entrevistas
Frases y Citas
Recursos Educativos
Presentaciones Educativas
Videos Educativos
Enlaces Web
Servicios
Desarrollo de Sitios Web
Diseño Web
Aplicaciones Web
Marketing Online
Formación y Conferencias
Consultoría
Acerca de Carlos Pes
Bibliotecas
Colaboradores
Contactar
Enlazar
Librerías
Perfiles en Internet
Mapa Web
Blog de Carlos Pes Blog de Carlos Pes
Google+ CarlosPes.Com en Google+
© 2006-2014 CarlosPes.com