Быстрая сортировка не работает - C (СИ)
Формулировка задачи:
Ребята помогите довести до ума прогу.
Прога сама случайным образом заполняет масив например из 10 положительных чисел в пределах от 0 до 100.
Потом выводит на экран
Затем путем быстрой сортировки прога должна отсортировать числа и разумеется вывести на экран
Но она этого не делает,не могу понять в чем ошибка
=============================================
Вот мой код
Прошу тапками не забрасывать,только учусь
Если не трудно помогите,заранее спасибо
Листинг программы
- #include<stdio.h>
- #include<stdlib.h>
- #include<time.h>
- #include<math.h>
- #define N 10
- int litlsort(int* mas,int n);
- int rek(int*,int,int);
- int flag;
- void main ()
- {
- int mas[10];
- litlsort(mas,N);
- }
- int litlsort(int* mas, int n)
- {
- int count=0;
- srand((unsigned int)time(0));
- int temp;
- int z=0;
- int i,j,k;
- for(i=0;i<10;i++)
- {
- mas[i]=rand()%100+1;
- printf("%d\t",mas[i]);
- }
- printf("\n");
- flag=0;
- rek(mas,10,count);
- for(i=0;i<10;i++)
- printf("%d\t",mas[i]);
- printf("\n");
- printf("\n");
- return 0;
- }
- int rek(int* mas,int n,int count)
- {
- if(count==0)
- return 1;
- int i,j;
- int temp;
- for(i=0;i<n;i++)
- {
- for(j=0;j<n;j++)
- {
- if(mas[i]>mas[j])
- {
- temp=mas[i];
- mas[i]=mas[j];
- mas[j]=temp;
- i=j;
- count++;
- }
- }
- if(i==n)
- i=i-1;
- for(j=i;j>0;j--)
- {
- if(mas[i]<mas[j])
- {
- temp=mas[i];
- mas[i]=mas[j];
- mas[j]=temp;
- i=j;
- count++;
- }
- }
- }
- rek(mas,n,count);
- return 0;
- }
Решение задачи: «Быстрая сортировка не работает»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- int iCmp(const void *a, const void *b){
- return *(int*)a - *(int*)b;
- }
- void pArray(int *arr, size_t cnt){
- size_t i;
- for ( i = 0; i < cnt; ++i )
- printf("%02d ", arr[i]);
- printf("\n");
- }
- #define ARR_SIZE 10
- int main(void){
- int arr[ARR_SIZE], i;
- srand(time(NULL));
- for ( i = 0; i < ARR_SIZE; ++i )
- arr[i] = rand() % 100;
- printf("Unsorted:\n");
- pArray(arr, ARR_SIZE);
- qsort(arr, ARR_SIZE, sizeof(int), iCmp);
- printf("Sorted:\n");
- pArray(arr, ARR_SIZE);
- exit(0);
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д