LINUX.ORG.RU

Сообщения NiggasLife

 

Трабл с выводом в консоль

Форум — Development

Имеется код, который сортирует массив слиянием. Беда заключается в том, что после вызова функции sort() не выводится ничего в консоль - ни puts, ни printf. К тому же внутри этих функций (sliv и sort) тоже не выводится ничего (только если printf/puts стоит в начале sort)

Вот код:


#include <stdio.h>
#include <stdlib.h>

#define n 10

int a[n],b[n];

void sliv(int p,int q);

void sort(int p,int q);

int main() {
int i;

for(i=0;i<n;i++) { a[i]=rand()%20; printf("%i ",a[i]); }

sort(1,n);

return 0;

exit(0);
}

void sliv(int p,int q) {
int k,r,i,j;

r=(p+q)%2;
i=p;
j=r+1;

for(k=p;k<q;k++) {
if(i<=r && (j>q || a[i]<a[j]) ) {
b[k]=a[i];
i++;
}
else {
b[k]=a[j];
j++;
}
}

for(k=p;k<q;k++) a[k]=b[k];

exit(0);
}

void sort(int p,int q) {
if(p<q) {
sort(p,(p+q)%2);
sort((p+q)%2+1,q);
sliv(p,q);
}

exit(0);
}


Очень надеюсь на помощь!

NiggasLife
()

RSS подписка на новые темы