Dudo mucho que a un nivel de universidad se cometan errores de indexación como estos. No sé que nivel tendréis ahora mismo ya que si estáis empezando igual lo pone para que os deis cuenta de los errores que contiene dicho código. Pero me parece un poco extraño que haga eso, igual depende del país o de la universidad, o del propio profesor...
Dicho esto vamos a ver que se puede hacer con el código.
for (i = 1; i <= 3; i = i + 1){
for (j = 1; j <= 3; j = j + 1){
cout << "Ingrese valor (" << i << "," << j << ")= ";
cin >> matriz[j];
}
}
Lo primero es que este bloque tiene toda la pinta de ser para introducir los valores a la matriz pero en ese caso la línea 5 debería ser:
cin >> matriz[i][j];
Observando el segundo bloque en el que tienes dudas, donde aparecen los auxiliares creo entender que cuando sólo se pone un índice a la matriz es porque es igual el primero que el segundo; es decir, que matriz[1] creo que se refiere a matriz[1][1]. Dando esto por supuesto en todo el programa:
for (i = 4; i <= 5; i = i + 1) {
matriz[1] = matriz[i - 3][1];
matriz[2] = matriz[i - 3][2];
matriz[3] = matriz[i - 3][3];
}
En este bucle se haría una primera iteración en la que:
matriz[1][1] = matriz[1][1]
matriz[2][2] = matriz[1][2]
matriz[3][3] = matriz[1][3]
Es decir se copiarían los valores de la primera fila en la diagonal principal de la matriz y en la segunda iteración con i = 5 quedaría:
matriz[1][1] = matriz[2][1]
matriz[2][2] = matriz[2][2]
matriz[3][3] = matriz[2][3]
Por lo que se copiarían los valores de la segunda fila en la diagonal (unas operaciones un tanto absurdas creo yo pero eso es lo que hace literalmente).
Finalmente el segundo bucle for asigna un valor indeterminado a las variables ya que se cuando la i vale más de 1 se accede a posiciones de la matriz que no han sido escritas por lo que pueden contener basura (dudo si en tal caso siempre valdrían 0 esas posiciones pero creo que no, que pueden tener cualquier valor basura ya que la matriz no ha sido inicializada entera a 0).
Conclusión: Si estos códigos son de un profesor de universidad, estoy entre dudar de mis conocimientos adquiridos hasta ahora en C++ o dudar de los conocimientos de ese profesor. Si al final le encuentras sentido a estos códigos me gustaría que me lo hicieras saber por si he pasado algo por alto.