#include <stdio.h>
int (*get_operator())(int, int);
int plus(int, int);
int minus(int, int);
int multiply(int, int);
int divide(int, int);
int (*get_operator())(int, int)
{
int choice;
while(1)
{
printf("==============================\n");
printf("0 : for plus\n");
printf("1 : for minus\n");
printf("2 : for multiply\n");
printf("3 : for divide\n");
printf("4 : for quit\n");
printf("==============================\n");
printf("Please Enter operator: ");
scanf("%d", &choice);
if((choice >= 0) && (choice <= 4))
{
switch(choice)
{
case 0 :
return +
case 1 :
return −
case 2 :
return &multiply;
case 3 :
return ÷
case 4 :
return 0;
}
}
else
{
printf("Wrong Input, Enter again!\n");
}
}
}
int main()
{
int num1;
int num2;
int result;
int (*handle)(int, int) = 0;
while(1)
{
handle=get_operator();
if(handle==0)
{
printf("This is the end of program!\n");
exit(0);
}
printf("Enter the first operand : ");
scanf("%d", &num1);
printf("Enter the second operand : ");
scanf("%d", &num2);
result=handle(num1,num2);
printf("\nthe result of operation is %d\n\n", result);
}
return 0;
}
int plus(int n1, int n2)
{
return (n1+n2);
}
int minus(int n1, int n2)
{
return (n1-n2);
}
int multiply(int n1, int n2)
{
return (n1*n2);
}
int divide(int n1, int n2)
{
return (n1/n2);
}