How English works : a grammar practice book - Swan, Michael (Oxford University Press, 1997)
With answers.