#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
void print_array(int arr[], int len);
int compare(const void *a, const void *b);
int two_elemets_equal(int arr[], int len);
int main(void)
{
int i, arr[N] = { 0 };
srand(time(NULL));
for (i = 0; i < N; i++)
arr[i] = rand() % 30 + 1;
print_array(arr, N);
printf("\n");
qsort(arr, N, sizeof(int), compare);
print_array(arr, N);
printf("\n");
if (two_elemets_equal(arr, N))
printf("\nThere are two elemets equal\n");
else
printf("\nNot found two elemets equal\n");
return 0;
}
int two_elemets_equal(int arr[], int len)
{
int i;
for (i = 0; i < len - 1; i++)
if (arr[i] == arr[i + 1]) return 1;
return 0;
}
int compare(const void *a, const void *b)
{
return ( *(int*)a - *(int*)b );
}
void print_array(int arr[], int len)
{
int i;
for (i = 0; i < len; i++) printf("%4d", arr[i]);
}
/*
run:
29 1 3 10 4 15 10 27 20 10
1 3 4 10 10 10 15 20 27 29
There are two elemets equal
*/