B
(1)將這組數據從大到小的順序排列為12,3,x,4,
處于中間位置的數是3,x,
那么由中位數的定義可知,這組數據的中位數是(3+x)÷2,
平均數為(2+3+4+x)÷4,
∴(3+x)÷2=(2+3+4+x)÷4,
解得x=3,大小位置與3對調,不影響結果,符合題意;
(2)將這組數據從大到小的順序排列后2,3,4,x,
中位數是(3+4)÷2=3.5,
此時平均數是(2+3+4+x)÷4=7,
解得x=5,符合排列順序;
(3)將這組數據從大到小的順序排列后x,2,3,4,
中位數是(2+3)÷2=2.5,
平均數(2+3+4+x)÷4=2.5,
解得x=1,符合排列順序.
∴x的值為1、3或5.
故選B.