/* Repetición: El bucle do...while
Sintaxis:
do{
Instrucciones
}while(condicion) */
// Mostrar los 10 primeros numeros enteros positivos
#include<stdio.h>
int main(){
int i; // Declaramos la variable i
i=1; // Asignamos el valor 1, es el primer número de la serie
do{
printf("%i",i); // Imprimimos en pantalla el valor de la variable i...
i++; // ...en cada iteracion le sumamos 1 a i...
}while(i<=10); // ...e imprimimos el valor de i hasta que alcance el
// último número.
// último número.
return 0;
}
En el primer ejemplo acabamos de ver cómo aplicar do-while, el programa ya tiene las variables por lo que al correrlo simplemente veremos el resultado en pantalla, sin necesidad de interactuar con él.
A continuación otro ejemplo donde el usuario ha de dar los datos para que se ejecute el bucle y concluya.
// Mostrar los numeros enteros entre dos intervalos, ambos inclusive
#include<stdio.h>
int main(){
int n1,n2; // Declaramos las variables para el primer y ultimo
// numero de la serie, solicitamos al usuario que
// que indique sus valores.
printf("Introduzca el primer numero de la serie:\n");
scanf("%i",&n1);
printf("Introduzca el ultimo numero de la serie:\n");
scanf("%i",&n2);
do{
printf("%i ",n1); // Imprimimos en pantalla el valor de la variable n1
n1++; // en cada iteracion le sumamos 1 a n1
}while(n1<=n2); // e imprimimos el valor de n1 hasta que alcance el
// valor de n2.
return 0;
}
En este último ejemplo, en cambio, el programa seguirá ejecutándose mientras el usuario siga realizando la acción que permite reproducir el bucle, en caso contrario finalizará.
// Solicitar repetición de saludo
#include<stdio.h>
int main(){
char opc;
do{
fflush(stdin); // Esta funcion limpia la pantalla
printf("Hola");
printf("\nIntroduzca 's' para saludar nuevamente: \n");
scanf("%c",&opc);
}while(opc == 's' || opc == 'S'); // Mientras el programa siga registrando...
// el caracter "s", nos seguira devolviendo
// ...el saludo inicial.
return 0;
}
No hay comentarios:
Publicar un comentario
Importante: No voy a resolver dudas en los comentarios puesto que yo también estoy aprendiendo. Sin embargo agradeceré correcciones en caso de haber errores en el código que he publicado.