Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.07 KB | None | 0 0
  1. #include <stdio.h>
  2. #include<stdlib.h>
  3. #include <iso646.h>
  4.  
  5.  
  6. void init_array(int *a,int n);
  7. void printff(int *a,int n);
  8. void gnom_sort(int *a, int n);
  9. void swapp(int *a, int t);
  10.  
  11. int main(){
  12.     int n;
  13.     printf("Введите размер массива:");
  14.     scanf("%d",&n);
  15.     srand(1234568);
  16.     int a[n];
  17.     init_array(a,n);
  18.     printf("Элементы массива:\t");
  19.     printff(a,n);
  20.     gnom_sort(a,n);
  21.     printf("Отсортированный массив:");
  22.     printff(a,n);
  23.     return 0;
  24. }
  25.  
  26.  
  27.  
  28. void init_array(int *a,int n)
  29. {
  30.     for(int i=0;i < n;i++)
  31.     {
  32.         a[i] = rand() % 100;
  33.     }
  34. }
  35.  
  36. void gnom_sort(int *a, int n)
  37. {
  38.     int t = 1;
  39.     while (t < n) {
  40.         if ( (t == 0) or (a[t - 1] <= a[t])){
  41.             t++;
  42.         } else {
  43.             swapp(a,t);
  44.             t--;
  45.         }
  46.     }
  47. }
  48.  
  49. void printff(int *a,int n){
  50.     for (int i = 0; i < n; i++){
  51.         printf("%d \t",a[i]);
  52.     }
  53.     printf("\n");
  54. }
  55.  
  56. void swapp(int *a, int t){
  57.     int temp = a[t];
  58.     a[t] = a[t - 1];
  59.     a[t - 1] = temp;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement