Advertisement
lukhavi

Matriz Dinamica

Sep 18th, 2019
706
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.28 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<time.h>
  4.  
  5. #define F 7
  6. #define C 4
  7. // Matrices dinámicas
  8.  
  9. int main(void){
  10.    
  11.     int             f,c;
  12.     int **matriz = NULL;    // puntero a puntero, apunta a un vector de punteros a enteros
  13.     int             i,j;
  14.     int     limInf = -100;  // limite inferior
  15.     int     limSup = 100;   // limite superior
  16.    
  17.     srand(time(NULL));      // marca semilla
  18.    
  19.     f = F;                  // numero de filas, fila minima = 1
  20.     c = C;                  // numero de columnas, columna minima = 1
  21.    
  22.     matriz = (int **)malloc(f*sizeof(int *));   // vector de punteros a int, matriz es puntero a puntero.
  23.     if(matriz == NULL){
  24.         printf("*** Error: No hay memoria disponible ***");
  25.         return -1;
  26.     }
  27.     for(i=0; i<f;i++){
  28.         matriz[i] = (int *)malloc(c*sizeof(int));   // cada fila de c columnas, matriz[i] es un puntero a vector de enteros
  29.         if(matriz[i]==NULL){
  30.             printf("*** Error: No hay memoria disponible ***");
  31.             return -1;
  32.         }
  33.     }
  34.    
  35.     // Relleno Matriz con valores aleatorioe entre -100 y 100
  36.     for(i = 0;i<f;i++){
  37.         for(j = 0;j<c;j++){
  38.             matriz[i][j] = limInf + rand()%(limSup + 1 -limInf );
  39.         }
  40.     }
  41.    
  42.     // Muestro la matriz
  43.     printf("Matriz de (%dx%d):\n\n",f,c);
  44.     for(i = 0;i<f;i++){
  45.         for(j = 0;j<c;j++){
  46.             printf("%4d ",matriz[i][j]);
  47.         }
  48.         printf("\n");
  49.     }
  50.    
  51.     printf("\n%c",5);
  52.     getchar();
  53.     return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement