Advertisement
Guest User

Sorting float numbers

a guest
Mar 25th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. void Sorting(float arr_param[],int size_param);
  5. void swap(float *left_param, float *right_param);
  6.  int main(int argc, char const *argv[])
  7.  {
  8.     FILE*fp=fopen("da.txt","r");
  9.     int BrElements=0,index=0;
  10.     float* allElements;
  11.     float floatElement;
  12.     allElements=(float*)malloc(sizeof(float)*1);
  13.     while(fscanf(fp,"%f ",&floatElement)!=EOF)
  14.       {
  15.           allElements=(float*)realloc(allElements,(++BrElements)*sizeof(float));
  16.  
  17.     if(allElements==NULL)
  18.     {
  19.       printf("Memory allocation failed\n");
  20.     }
  21.           allElements[index]=floatElement;
  22.           index++;
  23.       }
  24.       int i;
  25.       for(i=0;i<index;i++)
  26.       printf("\n%g ",allElements[i]);
  27.       Sorting(allElements,index);
  28.       printf("\nnew Element\n");
  29.       for(i=0;i<index;i++)
  30.       printf("\n%g ",allElements[i]);
  31.       free(allElements);
  32.       fclose(fp);
  33.   return 0;
  34. }
  35. void Sorting(float arr_param[],int size_param)
  36. {
  37.   int index_main; //Main index
  38.   int index_sec;  //Secondary index
  39.  
  40.   for (index_main = 0 ; index_main < (size_param - 1); index_main++)
  41.   {
  42.     for (index_sec = 0 ; index_sec < size_param - index_main - 1; index_sec++)
  43.     {
  44.       if (arr_param[index_sec] > arr_param[index_sec+1])
  45.       {
  46.         swap(&arr_param[index_sec], &arr_param[index_sec+1]);
  47.       }
  48.     }
  49.   }
  50. }
  51. void swap(float *left_param, float *right_param)
  52. {
  53.   float temp_var = 0.0;
  54.   temp_var = *left_param;
  55.   *left_param = *right_param;
  56.   *right_param = temp_var;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement