#include "stdio.h"
#include "stdlib.h"
int plus(int a, int b) { return a + b; }
int minus(int a, int b) { return a - b; }
int multiply(int a, int b) { return a * b; }
int divided(int a, int b) { return a / b; }
int main()
{
int a, c;
char b;
printf("key a Function \nEX: 1 + 1\n");
scanf("%i %c %i", &a, &b, &c);
if (b == '+')
printf("%d %c %d = %d\n", a, b, c, plus(a, c));
else if (b == '-')
printf("%d %c %d = %d\n", a, b, c, minus(a, c));
else if (b == '*')
printf("%d %c %d = %d\n", a, b, c, multiply(a, c));
else if (b == '/')
printf("%d %c %d = %d\n", a, b, c, divided(a, c));
}=========================================================================
#include"stdio.h"
int plus(int a, int b){ return a+b; }
int minus(int a, int b){ return a-b; }
int multiply(int a, int b){ return a*b; }
int divided(int a, int b){ return a/b; }
int main(){
int a, c;
char b;
scanf("%d %c %d", &a, &b, &c);
int (*cmd[])(int a, int c) = {multiply, plus, NULL, minus, NULL, divided};
printf("%d\n",cmd[b-42](a,c)); // '*' ASCII = 42(0x2a) ,'+' ASCII = 43 (0x2b), '-' ASCII = 45, '/' ASCII = 47
return 0;
}
No comments:
Post a Comment