当前位置: 代码迷 >> 综合 >> 6-1 函数调用 (10分)
  详细解决方案

6-1 函数调用 (10分)

热度:87   发布时间:2024-02-05 19:36:01.0

编写三个函数:求两个整数的最大值、最小值、和。分别用这三个函数作为实参,再写一个计算函数compute,对两个整数进行各种计算。其中一个形参为指向具体算法函数的指针。

函数接口定义:

int max(int a, int b);
int min(int a, int b);
int sum(int a, int b);
int compute(int a, int b, int(*func)(int, int));

裁判测试程序样例:

在这里给出函数被调用进行测试的例子。例如:
#include <iostream>
using namespace std;int max(int a, int b);
int min(int a, int b);
int sum(int a, int b);
int compute(int a, int b, int(*func)(int, int));int main()
{
int a, b, res;cin >> a >> b;
res = compute(a, b, & max);
cout << "Max of " << a << " and " << b << " is " << res << endl;
res = compute(a, b, & min);
cout << "Min of " << a << " and " << b << " is " << res << endl;
res = compute(a, b, & sum);
cout << "Sum of " << a << " and " << b << " is " << res << endl;
return 0;
}/* 请在这里填写答案 */

输入样例:

3 5

输出样例:

Max of 3 and 5 is 5
Min of 3 and 5 is 3
Sum of 3 and 5 is 8

 

 

看完题后 可以知道 让写三个函数 题目中给出了一个 函数  计算函数compute 

int max(int a, int b)
{if(a>b){return a;}else{return b;}
}
int min(int a, int b)
{if(a<b){return a;}else{return b;}
}
int sum(int a, int b)
{return a+b;
}
int compute(int a, int b, int(*func)(int, int)){return (*func)( a,  b);}

 

 

  相关解决方案