/* program illustrating array variables and addresses
 */

#include <stdio.h>

void add5 (double arr [], int size)
{
  int j;
  for (j = 0; j < size; j++)
    arr[j] += 5;
}

int main ()
{
  double a [10] = {1000.0, 2000.0, 3000.0, 4000.0, 5000.0, 
                   6000.0, 7000.0, 8000.0, 9000.0, 1000.00};
  printf ("value of variable a:  %lu\n", a);
  printf ("array addresses and values\n");
  printf ("           address         value\n");
  printf ("123456789012345678901234567890123\n");
  int i;
  for (i = 0; i < 10; i++)
    {
      printf ("%18lu    %11.2lf\n", &a[i], a[i]);
    }

  add5 (a, 10);


  printf ("array addresses and values\n");
  printf ("           address         value\n");
  for (i = 0; i < 10; i++)
    {
      printf ("%18lu    %11.2lf\n", &a[i], a[i]);
    }


  return 0;
}
