nht_cntt

struct

Mar 13th, 2015
402
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.31 KB | None | 0 0
  1.                                                                                                                                       #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. #include <windows.h>
  5. #include <time.h>
  6. #include <stdlib.h>
  7. struct tdien
  8. {
  9.     char en[300];
  10. } *td;
  11.  
  12. void Hoanvi(tdien &a,tdien &b);
  13.  
  14. void SelectionSort(tdien b[], long n);
  15.  
  16. void xuat(tdien b[], long n);
  17.  
  18.  
  19. void main()
  20. {
  21.     FILE* f;
  22.     char str[300];
  23.     long i = 0;
  24.     char* str1,*str2;
  25.     f = fopen("va.dd","rt");
  26.     td=new tdien[150000]; // <==
  27.     while (fgets(str,300,f)>0)
  28.     {
  29.         str1 = strstr(str,"##");
  30.         if (str1!=NULL)
  31.         {
  32.             str2 = strstr(str1,"|-");
  33.             if (str2!=NULL && strlen(str2)<=14)
  34.             {
  35.                 strcpy(td[i].en,str2+3);
  36.                 printf("%d=",i);
  37.                 puts(td[i].en);  
  38.                 i++;     
  39.             }
  40.         }
  41.        
  42.        
  43.     }
  44.     SelectionSort(td,i);
  45.     xuat(td,i);
  46.     delete td;
  47.     fclose(f);
  48. }              
  49.  
  50.  
  51.  
  52. void SelectionSort(tdien b[], long n)
  53. {
  54.     long min,i,j;
  55.     for (i=0;i < n-1; i++)
  56.     {
  57.         min =i;
  58.         for (j=i+1; j<n; j++)
  59.         {
  60.             if ( strcmp(b[j].en,b[min].en) < 0)
  61.             {
  62.                 min =j;
  63.             }
  64.  
  65.         }
  66.         Hoanvi(b[i],b[min]);
  67.     }
  68.  
  69. }
  70.  
  71.  
  72. void Hoanvi(tdien &a,tdien &b)
  73. {
  74.     tdien t;
  75.     t=a;
  76.     a=b;
  77.     b=t;
  78. }
  79.  
  80. void xuat(tdien b[], long n)
  81. {
  82.     for (long i = 0; i < n; i++)
  83.     {
  84.         printf("\n%d = ", i);
  85.         puts (b[i].en);
  86.     }
  87.  
  88.        
  89. }
Advertisement
Add Comment
Please, Sign In to add comment