Ejemplo 
while:
- #include <cstdlib> 
- #include <iostream> 
- //Los de arriba son las liberías 
-   
- using namespace std; 
-   
- int main(int argc, char *argv[]) 
- { 
-     int i; //Declaramos la variable "i" de tipo integer 
-     cout << "Ingrese un numero menor que 20" << endl; 
-     cin >> i; 
-   
-     while(i<20) //Mientras que la variable "i" contenga un valor inferior a "20"... 
-     { 
-                i++; //Incrementa en uno el valor de "i" 
-                cout << "Valor incrementado en uno (" << i << ")" << endl; 
-     } 
-   
-     system("PAUSE>nul"); 
-     return 0; 
- } 
-   
El bucle 
while se ejecuta si la variable cumple el requisito, en este caso ser inferior a 20. Si introduces el número 30 el bucle no se ejecutará.
Ejemplo de 
Do While:
- #include <cstdlib> 
- #include <iostream> 
-   
- using namespace std; 
-   
- int main(int argc, char *argv[]) 
- { 
-     int i; //Declaramos la variable "i" de tipo integer 
-     cout << "Ingrese un numero menor que 20" << endl; 
-     cin >> i; 
-   
-     do //Hacer esto... 
-     { 
-                i++; //Incrementa en uno el valor de "i" 
-                cout << "Valor incrementado en uno (" << i << ")" << endl; 
-     } 
-     while(i<20); //Volver a hacerlo si cumple el requisito 
-   
-     system("PAUSE>nul"); 
-     return 0; 
- } 
El bucle 
do while se ejecuta como mínimo una vez. En este caso:
-si nuestro número (i) es inferior a 20 se hará lo mismo que con el bucle while (código anterior).
-si nuestro número (i) es superior a 20 ejecutará el bucle una vez.
Espero que te haya servido,
atte. Herio