Сортировка массива по последней цифре - C (СИ)
Формулировка задачи:
Пожалуйста, помогите написать такую программу
Заполнить массив из 10 элементов случайными числами в интервале [0..100] и отсортировать его по последней цифре.
Пример:
Исходный массив:
14 25 13 30 76 58 32 11 41 97
Результат:
30 11 41 32 13 14 25 76 97 58
Решение задачи: «Сортировка массива по последней цифре»
textual
Листинг программы
//gcc 5.4.0
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
void array_print(int *arr, size_t size) {
for (size_t i=0; i<size; ++i)
printf("%d ", arr[i]);
printf("\n");
}
int cmp(void *a, void *b) {
return *(int*)a%10 - *(int*)b%10;
}
int main(void)
{
int arr[N];
srand(time(NULL));
for (size_t i=0; i<N; ++i)
arr[i] = rand() % 100;
array_print(arr, N);
qsort(arr, N, sizeof(int), cmp);
array_print(arr, N);
return 0;
}