Answer: C. C is correct. Relative lowering of vapour pressure equals the solute mole fraction: (p° − p)/p° = (25.0 − 23.4)/25.0 = 1.6/25.0 = 0.064. Moles of solvent = 90/18 = 5.00. Then x_solute = n/(n + 5.00) = 0.064, so n = 0.064 × 5.00/(1 − 0.064) = 0.320/0.936 = 0.342 mol, and M = 10/0.342 = 29.2 ≈ 29 g/mol. Watch the two easy slips in that line: 0.064 × 5.00 is 0.320, and 0.320/0.936 is 0.342 — it is the 0.342 that is the number of moles, not an intermediate.
Why A is wrong: A is wrong: 170 g/mol does not fit the data. Check by substitution: 10/170 = 0.0588 mol of solute gives x_solute = 0.0588/5.059 = 0.0116 and a predicted p = 25.0 × (1 − 0.0116) = 24.7 mmHg, not the measured 23.4 mmHg.
Why B is wrong: B is wrong: by the same check, 10/34 = 0.294 mol gives x_solute = 0.294/5.294 = 0.0556 and p = 25.0 × (1 − 0.0556) = 23.6 mmHg, not 23.4 mmHg. The measured lowering needs x_solute = 0.064.
Why D is wrong: D is wrong, but only just, and the reason is worth knowing: 31 g/mol comes from the dilute approximation x_solute ≈ n_solute/n_solvent, which drops n_solute from the denominator and gives n = 0.064 × 5.00 = 0.320 mol and M = 10/0.320 = 31.3. At x = 0.064 the solution is not dilute enough for that: the exact form gives 29 g/mol, about 7% lower.