#include <stdio.h>

int add(int x, int y)   { return x + y; }
int mul(int x, int y)   { return x * y; }
int sub(int x, int y)   { return x - y; }

void main() {
  int (*ptr)(int, int);      // a single pointer
  int (*ptrs[3])(int, int);  // an array of pointers

  ptrs[0] = &add;
  ptrs[1] = &mul;
  ptrs[2] = &sub;
  
  for(int i = 0; i < 3; i++) {
    ptr = ptrs[i];
    printf("Op %d on (7, 4) = %d\n", i, (*ptr)(7, 4));
  }
}