While: Condition is checked first ,only if it is satisfied/true then the body is executed.[ Min Num of time the body executes is 0].
Do While: Initially body is executed and later the condition is checked. This means even if the condition is false, body will execute for 1 time. [ Min Num of time the body executes is 1] .Only when the body has to be executed atleast once,then use this condition.
You can imagine this using simple example,
1]While(cake ==veg)
{
eat the cake;
}
2]do
{
eat the cake;
}while(cake == veg);
If the cake is non veg then using "do while" will make you to eat the cake @1st and later for next bite ,it will check the condition.Where as "While" will check for the1st bite and if the cake is non veg then it will not make you to eat the cake.