#include <stdio.h> 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 myfun(int a, int b, int (*f)(int, int )) { //把函数作为一个参数 return (f(a,b)); } int main() { //定义一个函数数组 int i; int (*fa[4])(int ,int) = {add, sub, mul, div}; //调用的时候只写函数的名字即可. printf("%d/n/n",myfun(1,2,sub)); for(i = 0; i < 4; i++) printf("%d/n",myfun(1,2,fa[i])); return 0; }