Facebook
From ALO, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 124
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void print1()
  5. {
  6.         printf("1 ");
  7. }
  8.  
  9. void print0()
  10. {
  11.         printf("0 ");
  12. }
  13.  
  14. int main(void)
  15. {
  16.         void (***tab)();
  17.  
  18.         tab = (void ***) malloc(sizeof(void(**)()) * 10);
  19.  
  20.         for (int i = 0; i < 10; i++)
  21.         {
  22.                 *(tab + i) = (void **) malloc(sizeof(void(*)()) * 10);
  23.         }
  24.  
  25.  
  26.         for (int i = 0; i < 10; i++)
  27.         {
  28.                 for (int j = 0; j < 10; j++)
  29.                 {
  30.                         if (i == j)
  31.                                 *(*(tab + i) + j) = print1;
  32.                         else
  33.                                 *(*(tab + i) + j) = print0;
  34.                 }
  35.         }
  36.  
  37.  
  38.         for (int i = 0; i < 10; i++)
  39.         {
  40.                 for (int j = 0; j < 10; j++)
  41.                 {
  42.                         (*(*(tab + i) + j))();
  43.                 }
  44.                 printf("\n");
  45.         }
  46.  
  47.         for (int i = 0; i < 10; i++)
  48.         {
  49.                 free(*(tab + i));
  50.         }
  51.         free(tab);
  52. }
  53.