Advertisement
Guest User

Bubble-Sorting

a guest
Oct 21st, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.29 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. #define MAX_NUMBERS 8
  4.  
  5. //Dati 8 numeri, eseguire un bubblesort (dal più piccolo al più grande)
  6.  
  7. void PrintNumbers(void);
  8.  
  9. int main(void)
  10. {
  11.     int flag = 0, n, Numero[MAX_NUMBERS], temp[MAX_NUMBERS], Scambi = 0;
  12.     do
  13.     {
  14.         printf("Inserire una cifra da riordinare (%d/%d): ", flag, MAX_NUMBERS);
  15.         scanf("%d", &n);
  16.         if(n == 0) printf("\nERRORE:Devi inserire un numero diverso da 0!\n");
  17.         else Numero[flag++] = n;
  18.     }while(flag < MAX_NUMBERS);
  19.    
  20.     printf("%d, %d, %d, %d, %d, %d, %d, %d\n", Numero[0], Numero[1], Numero[2], Numero[3], Numero[4], Numero[5], Numero[6], Numero[7]);
  21.    
  22.     flag = 0;
  23.    
  24.     do
  25.     {
  26.         Scambi = 0;
  27.         for(flag = 0; flag < MAX_NUMBERS-1; flag++)
  28.         {
  29.             if(Numero[flag] > Numero[flag+1])
  30.             {
  31.                 temp[flag] = Numero[flag+1]; //temp0 = n1 = 3
  32.                 temp[flag+1] = Numero[flag]; //temp1 = n0 = 4
  33.                 Numero[flag] = temp[flag]; //n0 = temp0 = 3
  34.                 Numero[flag+1] = temp[flag+1]; //n1 = temp1 = 4
  35.                 Scambi = 1;
  36.             }
  37.         }
  38.         printf("%d, %d, %d, %d, %d, %d, %d, %d\n", Numero[0], Numero[1], Numero[2], Numero[3], Numero[4], Numero[5], Numero[6], Numero[7]);
  39.     }while(Scambi == 1);
  40.    
  41.     printf("FINALE:\n");
  42.     printf("%d, %d, %d, %d, %d, %d, %d, %d\n", Numero[0], Numero[1], Numero[2], Numero[3], Numero[4], Numero[5], Numero[6], Numero[7]);
  43.     return 1;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement