Advertisement
u53r

Ordinamento vettore da file con Selection Sort

Mar 19th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.02 KB | None | 0 0
  1. /* Dato un vettore di 10 elementi, caricarlo con i valore presi da un file "input.txt" ed ordinarlo in ordine crescente*/
  2. #include <stdio.h>
  3.  
  4. int main(int argc, char const *argv[]) {
  5.   FILE *f1;
  6.   int v[10],i,j,swp,min,minPos; // v = vettore i,j = contatori for swp = variabile per lo scambio
  7.   f1 = fopen("input.txt","r");
  8.   if(f1 == NULL){
  9.     printf("Errore\n");
  10.     return 1;
  11.   }else{ // In questo caso, avendo inserito precedentemente "return 1", l'else non รจ necessario, ma lo inserisco per questioni di ordine sintattico
  12.     for (i = 0; i < 10; i++) {
  13.       fscanf(f1,"%d",&v[i]);
  14.     }
  15.     // Ordinamento con Selection Sort
  16.     for (i = 0; i < 10; i++) {
  17.       min = v[i];
  18.       minPos = i;
  19.       for (j = i; j < 10; j++) {
  20.         if(v[j] < min){
  21.           min = v[j];
  22.           minPos = j;
  23.         }
  24.       }
  25.       swp = v[i];
  26.       v[i] = min;
  27.       v[minPos] = swp;
  28.     }
  29.     // Stampa dei risultati
  30.     for(i=0;i<10;i++){
  31.       printf("N. %d --> %d\n", i,v[i]);
  32.     }
  33.   }
  34.   fclose(f1);
  35.   return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement