#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
double my_add(double x, double y) {
return x + y;
}
double my_sub(double x, double y) {
return x - y;
}
double my_mul(double x, double y) {
return x * y;
}
double my_div(double x, double y) {
return x / y;
}
typedef double func_t(double, double);
func_t *func_table[4] = { my_add,
my_sub,
my_mul,
my_div
};
int main()
{
double x = 0, y = 0;
if (2 != scanf("%lf %lf", &x, &y))
{
perror("error input!\n");
return -1;
}
for (int i = 0;i < sizeof(func_table) / sizeof(func_t *);i++)
{
printf("res = %lf\n", func_table[i](x, y));
}
return 0;
}
函数指针表
最新推荐文章于 2024-09-10 09:40:59 发布
本文介绍了一个C程序,展示了如何使用函数指针数组来执行基本算术运算(加、减、乘、除)。通过定义和调用指向my_add、my_sub、my_mul、my_div这四个函数的指针,实现了输入两个数并返回运算结果的功能。

3024

被折叠的 条评论
为什么被折叠?



