Guest User

Untitled

a guest
Nov 23rd, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.71 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. typedef struct {
  4.      int arre [20];
  5. } NUMEROS;  
  6.  
  7. void Almacena(NUMEROS* Datos, FILE *Ar ) {
  8.      NUMEROS temp;
  9.      int i;
  10.      system("cls");
  11.      srand(time(NULL));
  12.      for(i=0;i<20;i++) {
  13.        Datos -> arre[i]=0+rand()%(999);
  14.      }
  15.      printf("\n\n\n\t\tGenerando Numeros Aleatorios...\n\n\n\n");
  16.      system("pause");
  17. }
  18.  
  19.  
  20. void ImprimeAle (NUMEROS* Datos, FILE *Ar) {
  21.        NUMEROS temp;
  22.        int i;
  23.        system("cls");
  24.        printf("Arreglo Aleatorio: \n\n");
  25.        for(i=0;i<20;i++) {
  26.          printf("[%d] -> %d\n", i+1, Datos -> arre[i]);
  27.        }
  28.  
  29. return;
  30. }
  31.  
  32.  
  33. void Ordena (NUMEROS* Datos, FILE *Ar) {
  34.        NUMEROS  temp;
  35.        int  i, j, q;
  36.        for (j=0; j < 20; j++) {
  37.        q = Datos -> arre[0];
  38.           for(i=0; i < 20; i++) {
  39.             if ( q > Datos -> arre[i] ) {
  40.               Datos -> arre[i-1] = Datos -> arre[i];
  41.               Datos -> arre[i] = q;
  42.             }
  43.             else {
  44.               q = Datos -> arre[i];
  45.             }
  46.          }
  47.        }      
  48. return;      
  49. }
  50.  
  51.  
  52. void ImprimeOrd (NUMEROS* Datos, FILE *Ar) {
  53.        NUMEROS temp;
  54.        int i;
  55.        printf("\nArreglo Ordenado: \n\n");
  56.        for(i=19;i >= 0;i--) {
  57.          printf("[%d] -> %d\n",i+1,  Datos -> arre[i]);
  58.        }
  59. printf("\n\n\n\t");
  60. system("pause");
  61. return;
  62. }
  63.  
  64.  
  65.  
  66. int main(int argi, char** argc[]) {
  67.     NUMEROS* num;
  68.     num = (NUMEROS*)malloc(sizeof(NUMEROS));
  69.     FILE *cmr;
  70.     cmr=fopen("datosnumeros.dat","w");
  71.     Almacena (num, cmr);
  72.     fwrite( num, sizeof(NUMEROS), 1, cmr );
  73.     ImprimeAle (num, cmr);
  74.     Ordena (num, cmr);
  75.     fwrite( num, sizeof(NUMEROS), 1, cmr );
  76.     ImprimeOrd (num, cmr);
  77.  
  78. return 0;
  79. fclose(cmr);
  80. }
Add Comment
Please, Sign In to add comment