fft result order compared to direct implementation of DTFS using text book
Octave returns your same first result:

octave-3.2.3:1&gt; fft([1 1 0 0])
ans =

   2 + 0i   1 - 1i   0 + 0i   1 + 1i


While 4*ifft([1 1 0 0]) results in what you claim is Matlab's result.

Please check you are not confusing direct and inverse FFT.