Lo primero que debes hacer es evitar el uso de la biblioteca conio de Borland, cambiar la definición de la función main a "int main(void) ..." o "int main() ...", mas información en la pagina
|Lo que no hay que hacer en C/C++. Nivel basico|.
* Debes eliminar la sentencia:
matriz[1][1]=matriz[fila][columna];
Ya que es inutil y puede causar que el programa reviente si se indica una matriz de diez filas y columnas.
* Las llaves de cierre no requieren de un punto después de estas:
for (n=0; n<=10; n++){
};
Ese punto y coma se procesa como una sentencia nula, esta de mas y hay que eliminarla. Y si el cuerpo del bucle es una sola sentencia no hay necesidad de paréntesis con lo cual el bucle anterior se reduce a:
for (n=0; n<=10; n++)
* En el ultimo bucle donde imprimes la matriz con las diagonales intercambiadas utilizas 10 como el limite de ambos bucles cuando deberías utilizar fila y columna.
* Por ultimo para intercambiar los valores de las diagonales solo necesitas de un bucle, de esta forma:
for (i = 0; i < fila; i++){
aux = matriz[i][i];
matriz[i][i] = matriz[i][columna - 1 - i];
matriz[i][columna - 1 - i] = aux;
}
Un saludo