Array of function pointer

Write a program to show use of an array of function pointer.

#include<stdio.h>
int sum(int,int);
int mul(int,int);
int div(int,int);
int sub(int,int);
int mod(int,int);
int main()
{
	int x,y,op,ans,i;
	int (*fp[5])(int,int);
	printf("Enter x value = ");
	scanf("%d",&x);
	printf("Enter y value = ");
	scanf("%d",&y);
	fp[0] = sum;
	fp[1] = sub;
	fp[2] = mul;
	fp[3] = div;
	fp[4] = mod;
	/*
	for(i = 0;i < 5;i++)
	{
		printf("%d\n",(*fp[i])(x,y));
	}
	*/
	printf("Enter Choice\n1] Addition\n2] Subtraction\n3] Multiplication\n4] Division\n5] Modulus\n");
	scanf("%d",&op);
	if(op < 1 || op > 5)
	{
		printf("Invalid choice\n");
		return 0;
	}
	ans = (*fp[op-1])(x,y);
	printf("ans = %d\n",ans);
	return 0;
}
int sum(int x,int y)
{
	printf("%s ",__func__);
	return x + y;
}
int mul(int x,int y)
{
	printf("%s ",__func__);
	return x * y;
}
int div(int x,int y)
{
	printf("%s ",__func__);
	return x/y;
}
int sub(int x,int y)
{
	printf("%s ",__func__);
	return x - y;
}
int mod(int x,int y)
{
	printf("%s ",__func__);
	return x % y;
}

Output

Enter x value = 10
Enter y value = 5
Enter Choice
1] Addition
2] Subtraction
3] Multiplication
4] Division
5] Modulus
3
mul ans = 50
Enter x value = 45
Enter y value = 34
Enter Choice
1] Addition
2] Subtraction
3] Multiplication
4] Division
5] Modulus
7
Invalid choice