?, SWITCH, WHILE, DO WHILE
- ?:Este se trata de un operador, parecido al if y else, pero se utiliza solo para codigos cortos... de una sola linea.
Ahora veremos con un ejemplo como funciona.
#include <iostream.h>
int main(){
int nota;
cout<<"Que nota sacaste en el examen?"<<endl;
cin>>nota;
cout<<(nota>=6 ? "muy bien\n" : "deves estudiar masd\n");
system ("pause>nul");
return 0;
}

Como vemos, comenzamos preguntando por la nota de un examen, y a continuacion, establezemos la condicion:
cout<<(nota>=6 ? "muy bien\n" : "deves estudiar masd\n");
De que si la nota es menor de 6 o mayor de 6 diga muy bien, o deves estudiar mas...
El ? siempre actua interpretando la 1ºparte como verdadera y la 2º como falsa, es decir:
? acción a ejecutar en caso verdadero : acción a ejecutar en caso falso ;
- SWITCH:Este comando, es bastante sencillo de entender, y simplifica bastante el uso de if/else...
Su sintaxis es siempre:
switch (opcion a comparar)
{
case a :
case b:
case c:
....
....
....
....
default;
}
Aunque para entender esto mejor, veamos un ejemplo:
# include <stdio.h>
# include <stdlib.h>
int main()
{
int opcion;
printf("elije una opcion:\n\n");
printf("1\n2\n3\n\n");
scanf("%i", &opcion);
{
switch (opcion)
{
case 1: printf("As elejido la 1\n");
break;
case 2: printf("seleccionaste el 2\n");
break;
case 3: printf("elejiste la 3\n");
break;
default : printf("Opcion incorrecta\n");
break;
}
}
system("pause");
}

Como vemos en el codigo, comenzamos preguntando al usuario que elija una opcion (1, 2 o 3) pero esto no explicaremos..
. iremos a lo que nos interesa que es la parte del switch.
como vemos, comenzamos tal y como dije antes con:
switch (opcion)
ya que "opcion" es el nombre que le dimos al principio (int opcion;)
Seguidamene, vamos poniendo:
case 1: .....
case 2: .....
case 3: .....
default: .....
los case x son las opciones que depende de lo que haya elejido el usuario, si elijio la opcion 2, pues ara lo indicado en case 2:
Si elijio la opcion 1, pues ara lo indicado en case1:
Y si elije una opcion que no esta incluida en case, como por ejemplo 6, 9... etc, pues ara lo marcado en default:
Tambien podeis ver, una nueva instruccion, que es
break; y lo que hace, es saltarse el resto de la estructura.
Para que entiendan mejor esto del break, eliminenlo del codigo, seleccionen la opcion 1, y veran que les imprimira en pantalla todas las opciones, puesto que ejecutara el codigo seguido y sin saltos.
"Lo mejor para entender el capitulo, es ir copiando el codigo y compilandolo, para entenderlo mejor...

)
- WHILE:La palabra while, en ingles significa "mientras"
While, es un bucle, que se ejecuta mientras la condicion sea verdadera, y si es falsa pues deja de ejecutarse.
Por ejemplo, creamos un contador, y le decimos que while (mientras) el contador sea menor que 10, nos imprima el valor del contador...
Seria algo asi:
# include <stdio.h>
# include <stdlib.h>
int main()
{
int contador;
contador = 0;
while (contador < 10)
{
printf ("El contador vale: %d\n", contador);
contador = contador + 1;
}
system ("pause");
}

y el resultado tras la compilacion, seria:

Como ven, empezamos el codigo marcando las librerias que vamos a utilizar:
# include <stdio.h>
# include <stdlib.h>
A continuacion, escribimos la funcion
int main()
Posteriormente, definimos una variable llamada contador, y la ponemos a 0
int contador;
contador = 0;
Una vez echo esto, aparece:
while (contador < 10)
{
printf ("El contador vale: %d\n", contador);
contador = contador + 1;
aqui lo que hacemos, es indicarle con el while, que mientras el contador sea menor que 10..... nos imprima en pantalla (printf) el texto "el contador vale x" y a continuacion, la variable contador coje un valor mas (+1).
Como vemos, cunado el contador supera el valor 10, la condicion del while ya no se cumple, y el programa se detiene.
-DO WHILE:Empleamos el do while, cuando necesitamos que se repita el bucle por lo menos una vez.
Lo veremos mejor con un ejemplo:
# include <stdio.h>
# include <stdlib.h>
int main()
{
int opcion;
do
{
printf("teclea 1, 2 o 3\n\n");
scanf("%i", &opcion);
}
while ((opcion<1)||(opcion>3));
printf("numero correcto\n");
system("pause");
}

Como vemos en este ejemplo, deveremos introducir una de las opciones correctas para que el programa finalize, que en este caso son 1, 2, 3.
Si ponemos 1, 2, o 3 el programa acabara, sino, se repetira la pregunta una y otra vez.
Creo que es sencillo de entender y no requiere mucha explicacion...
Al igual que vimos antes, con el bucle, WHILE, el DO WHILE es muy similar...
do
{
Acciones a ejecutar;
}
while(condicion a cumplir);
Y hasta aqui explicare por hoy.
Me gustaria haber explicado algo mas relacionado con esto, como el break y continue, goto y for, pero no me a dado tiempo, asi que tal vez en otra ocasion

Un saludo