Programovanie v jazyku C++


0200 Smerníky

Ak sú zadané nasledujúce deklarácie a priradenia, čo robia výrazy uvedené pod nimi ?
  static int ar[]={10, 15, 4, 25, 3, -4};
  int *p=&ar[2];

  *(p+1);
  p[-1];
  (ar-p);
  ar[*p++];
  *(ar+ar[2]);

 Čo je zlé na nasledujúcom kóde:
  int j, ar[5]={1,2,3,4,5};
  for(j=1; i<5; ++j)
  printf("%d\n",ar[j]);

Sú deklarácie
  char s[10];
  a
  char *s;
  zhodné? Ak nie, napíšte program, v ktorom nemôžu byť vymenené.

Väčšina firiem, ktorá sa chce tváriť ako high-tech má mená, ktoré začínajú slovíčkami "Com","Data","Inter" a končia "graph","dex","tex","mation". Nájdite viac takýcho prefixov a postfixov a napíšte program, ktorý bude náhodne vytvárať mená firiem. Pre generovanie náhodných čísel využite štandardnú funkciu rand().

Ak sú zadané nasledujúce deklarácie a priradenia, čo robia výrazy uvedené pod nimi ?
  static int a[2][3]={ {-3, 14, 5},
                       {1, -10, 8}
                     } ;
  static int *b[]={ a[0], a[1] };
  static int *p=b[1];

  *b[1];
  *(++p);
  *(*(a+1)+1);
  *(--p-2);

Ktoré z nasledujúcich výrazov sú rovné a[j][k] ?
  *a([j]+k);
  **(a[j+k]);
  (*(a+j))[k];
  (*(a+k))[j]);
  *((*(a+j))+k);
  **(a+j)+k;
  *(&a[0][0]+j+k);