Buenas, dejo una posible solución al ejercicio CU00545F del tutorial básico de programación en lenguaje C.
EJERCICIO
Estudia el siguiente código y responde a las preguntas:
#include <stdio.h>
#include <stdlib.h>
// Curso de programación C aprenderaprogramar.com
int main () {
/* local variable definition */
int a = 10;
/* while loop execution */
while( a < 20 ) {
printf("value of a: %d\n", a);
a++;
if( a > 15) {
break;
}
}
return 0;
}
a) Sin ejecutar el código (sólo pensando) responde: ¿cuál será el resultado del programa?
Que se mostrara por pantalla el mensaje desde que "a" valga 10 hasta que "a" valga 16, y luego mediante la sentencia "break" se saldrá del "while".
b) Ejecutando el código ¿cuál es el resultado del programa?
Que se muestra por pantalla desde que a vale 10 hasta que a vale 15. Es decir que cuando se ejecuta la sentencia "break", las líneas anteriores en la iteración no se ejecutan.
¿Qué signficado tiene a++ en el contexto de este programa?
Cada vez que se ejecuta "a++" se incrementa en 1 el valor que tuviese anteriormente "a".
¿Es equivalente escribir if( a > 15) break; y if( a > 15) { break; } ?
Si, da el mismo resultado.
Haz que el código cuente desde 10 hasta 15 sin hacer uso de break (usa sólo las condiciones naturales de un bucle while).
#include <stdio.h>
#include <stdlib.h>
int main () {
/* local variable definition */
int a = 10;
/* while loop execution */
while( a <= 15) {
printf("value of a: %d\n", a);
a++;
//if( a > 15)
// break;
}
return 0;
}
Saludos.
![Sonreir ;D](https://aprenderaprogramar.com/foros/Smileys/default/grin.gif)