Question on speed. 
Speed of a bus is 45 km/h. If it stops for a few minutes in an hour
  then its average speed becomes 42 km/h. Find out the time duration it
  stops for in an hour.

My attempt:
Let Distance be D.
Let the time duration for which it halts be x.
$45=\frac{D}{1}$
$42=\frac{D}{1+x}$
Therefore,
$45=42+42x$
$x=4\frac{2}{7} minuites$
What have I done wrong?

What you have done wrong here is that the speed (kilometers per hour) is in hour, while you are calculating $x$ in minutes.
The speed $45$ km/h means that each hour ($60$ minutes) the bus travels $45$km or $45000$m, so each minute the bus travels $750$m.
If it stops for $x$ minutes then in one hour, in terms of $x$, the bus will only travel $45000-750x$ meters, so $45000-750x=42000 \Rightarrow x=4.$
