[C] Sortowanie pojedynczych wierszy tablicy dwuwymiarowej
: 17 kwie 2011, o 11:25
Witam,
Mam następujący fragment programu:
Jak łatwo się domyślić, chciałbym, aby funkcja rosnaco posortowała mi poszczególne wiersze tablicy dwuwymiarowej (przy czym P jest zdefiniowane i wynosi 10). Niestety, wskaźniki nie są moją mocną stroną i program nie działa. Ktoś ma jakiś pomysł, jak to poprawić?
Mam następujący fragment programu:
Kod: Zaznacz cały
int generuj_dane(int typ, int ilosc, char nazwapliku[51]){
int i, j, tab[P][ilosc];
double x;
for (i=0; i<P; i++){
for (j=0; j<ilosc; j++){
x = (double)rand()/RAND_MAX*200-100;
tab[i][j] = (int)x;
}
}
for (i=0; i<P; i++){
rosnaco(*tab[i][], 0, ilosc-1);
}
return 1;
}
void rosnaco(int *tab, int p, int k){
int i=p, j=k, s, pom;
s=(i+j)/2;
do {
while(tab[i]<tab[s]) i++;
while(tab[j]>tab[s]) j--;
if (i<=j){
pom=tab[i];
tab[i]=tab[j];
tab[j]=pom;
i++;
j--;
}
} while (i<=j);
if (j>p) rosnaco(tab,p,j);
if (i<k) rosnaco(tab,i,k);
}