allora da come l'ho capita io:
immagina di avere una matrice di 5 righe e 5 colonne
analizziamo la prima riga. i valori della riga sono:
1 2 3 4 5
la funzione deve invertire i valori contenuti nelle celle della riga e riscrivere:
5 4 3 2 1
con dim indico la lunghezza di ogni riga,con k di quante posizioni deve spostarsi.
tralasciando la dimenticanza che mi facevi notare ho scritto di nuovo il codice:
codice:
void scambia( double **a, int dim, int nrighe, int ncolonne) {
int i,j,k,temp;
for(i=1; i<nrighe; i++) {
for(j=1; j<ncolonne; j++)
while (a[i+k][j]<a[dim-k][j]) {
for(k=0; k<dim; k++)
temp=a[i+k][j];
a[i+k][j]=a[dim-k][j];
a[dim-k][j]=temp;
}
}
}
credo che il testo voglia dire ciò che ti ho spiegato. ma compilando mi da errore