1.) saving a matrix, yea you can... simply do a small save loop getting all the co-ordinates of the matrix + height.
E.g.
a matrix with 50 by 50 tiles
For TileX = 0 to 50
For TileY = 0 to 50
Get Ground Height..... blah blah
then write to an array
Next TileY
next TileX
After that, save to file for loading later on.
Personally I feel it is better to create a 3d model landscape instead of using a matrix, far easier to manipulate within a 3d modeling tool. Unless you've already written your own 3d level editor
Yes it is possible to export a mesh to .x providing u can get all the information required and write it to a .x file. You'll need to learn how a .x model is structured though. In a scale of 1 - 10 for your programming skills you'll need a 6/10 to do this.