visoft

Pregatire 12.11. Stocare vector de vectori

Nov 12th, 2020
697
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. // o tabela de int-uri
  4. // o tabela de tabele de int-uri
  5. // numarul de elemente din fiecare vector
  6. // numarul de vectori
  7.  
  8. typedef struct{
  9.     int numar_de_vectori; // numarul de vectori
  10.     int *lungime_individuala; // numarul de elemente din fiecare vector
  11.     int **vectori; // o tabela de tabele de int-uri
  12. }TabelMare;
  13.  
  14. int main() {
  15.     // 3 4 2
  16.     // 10 11
  17.     // 4
  18.     TabelMare tab;
  19.     tab.numar_de_vectori = 3;
  20.     tab.lungime_individuala = (int*)calloc(sizeof(int), tab.numar_de_vectori);
  21.     tab.vectori = (int**)calloc(sizeof(int*), tab.numar_de_vectori);
  22.  
  23.     tab.lungime_individuala[0] = 3;
  24.     tab.lungime_individuala[1] = 2;
  25.     tab.lungime_individuala[2] = 1;
  26.  
  27.     for (int i = 0; i < tab.numar_de_vectori; ++i) {
  28.         tab.vectori[i] = (int*)calloc(sizeof(int), tab.lungime_individuala[i]);
  29.     }
  30.  
  31.     tab.vectori[0][0] = 3;
  32.     tab.vectori[0][1] = 4;
  33.     tab.vectori[0][2] = 2;
  34.     tab.vectori[1][0] = 10;
  35.     tab.vectori[1][1] = 11;
  36.     tab.vectori[2][0] = 4;
  37.  
  38.     for (int i = 0; i < tab.numar_de_vectori; ++i) {
  39.         for (int j = 0; j <tab.lungime_individuala[i]; ++j) {
  40.             printf("%d ", tab.vectori[i][j]);
  41.         }
  42.         printf("\n");
  43.     }
  44.  
  45.  
  46.     return 0;
  47. }
  48.  
  49.  
RAW Paste Data