欢迎各位点赞👍评论✍收藏⭐
题目:实现计算机程序
解答:
该程序运用函数指针数组,具体请看代码
代码:
- #include
- int add(int a, int b)
- {
- return a + b;
- }
- int sub(int a, int b)
- {
- return a - b;
- }
- int mul(int a, int b)
- {
- return a * b;
- }
- int div(int a, int b)
- {
- return a / b;
- }
- int main()
- {
- int x, y;
- int input = 1;
- int ret = 0;
- int(*p[5])(int x, int y) = { 0, add, sub, mul, div }; //函数指针数组
- do
- {
- printf("*************************\n");
- printf(" 1:add 2:sub \n");
- printf(" 3:mul 4:div \n");
- printf(" 0:exit \n");
- printf("*************************\n");
- printf("请选择:");
- scanf("%d", &input);
- if ((input <= 4 && input >= 1))
- {
- printf("输入操作数:");
- scanf("%d %d", &x, &y);
- ret = (*p[input])(x, y);
- printf("ret = %d\n", ret);
- }
- else if (input == 0)
- {
- printf("退出计算器!\n");
- }
- else
- {
- printf("输入有误!\n");
- }
- } while (input);
- return 0;
- }