Advertisement
AmidamaruZXC

Untitled

Dec 5th, 2020
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.38 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4. #include <time.h>
  5. #include <locale.h>
  6.  
  7. void createArray(char* arr, int size, int a, int b)
  8. {
  9.     for (int i = 0; i < size; i++)
  10.         arr[i] = a + rand() % (b - a + 1);
  11. }
  12.  
  13. void sortArray(char* arr, int size)
  14. {
  15.     char newElement;
  16.     int location;
  17.  
  18.     for (int i = 1; i < size; i++)
  19.     {
  20.         newElement = arr[i];
  21.         location = i - 1;
  22.         while (location >= 0 && arr[location] < newElement)
  23.         {
  24.             arr[location + 1] = arr[location];
  25.             location = location - 1;
  26.         }
  27.         arr[location + 1] = newElement;
  28.     }
  29. }
  30.  
  31. int main()
  32. {
  33.     setlocale(LC_ALL, "rus");
  34.     srand(time(NULL));
  35.     int n, a, b;
  36.     char* arr;
  37.     printf("Введите размер массива: ");
  38.     scanf("%d", &n);
  39.     printf("Введите нижнюю границу диапазона элементов матрицы: ");
  40.     scanf("%d", &a);
  41.     printf("Введите верхнюю границу диапазона элементов матрицы: ");
  42.     scanf("%d", &b);
  43.  
  44.     arr = (char*)malloc(n * sizeof(char));
  45.     createArray(arr, n, a, b);
  46.  
  47.     printf("Сгенерированный массив: ");
  48.     for (int i = 0; i < n; i++)
  49.         printf("%c ", arr[i]);
  50.     printf("\n");
  51.  
  52.     sortArray(arr, n);
  53.     printf("Отсортированный по убыванию массив: ");
  54.     for (int i = 0; i < n; i++)
  55.         printf("%c ", arr[i]);
  56.  
  57.     free(arr);
  58.     return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement