N会转化成铁,所以N就是氧化铁,Y会与铁和氧化铁反应,所以Y就是盐酸,盐酸会与碳酸钠和氢氧化钠反应,所以X、M就是氢氧化钠和碳酸钠,但是氢氧化钠和碳酸钠都会相互转化,X、M不能鉴别,A、从推导中可以看出X可以是碳酸钠,也可以是氢氧化钠,故A错误;B、Y会与铁和氧化铁反应,所以Y就是盐酸,故B正确;C、一氧化碳和氧化铁高温生成铁和二氧化碳的反应就不是置换反应,故C错误;D、M是碳酸钠时,和盐酸反应会生成气体,故D错误.故选B.