因向饱和溶液中加入4.6g无水MgCl2,析出水合晶体40.6g,则从饱和溶液中出来的质量为(40.6-4.6)g=36g,36g溶液中溶质MgCl2的质量为36g×46.8%=16.8g,水的质量为36g-16.8g=19.2g,则40.6g晶体中MgCl2的质量为4.6g+16.8g=21.4g,水的质量为19.2g,MgCl2的相对分子质量为95,水的相对分子质量为18,则 21.4 95 : 19.2 18 ≈1:5即化学式为MgCl2?5H2O,故选B.