C++编写一个函数求三个数最大值,分别用不带默认参数的函数实现与带默认参数的函数
时间: 2024-11-15 17:31:02 浏览: 16
基于Matlab利用模拟退火算法求一元函数最大值(源码).rar
5星 · 资源好评率100%
在C++中,我们可以创建两个函数来求三个数的最大值,一个不带默认参数的版本,另一个则是带默认参数的版本。
**不带默认参数的函数示例:**
```cpp
#include <iostream>
int findMax(int a, int b, int c) {
if (a > b && a > c)
return a;
else if (b > a && b > c)
return b;
else
return c;
}
int main() {
int num1 = 5, num2 = 7, num3 = 3;
int maxNum = findMax(num1, num2, num3);
std::cout << "The maximum number is: " << maxNum << std::endl;
return 0;
}
```
在这个例子中,`findMax`函数接受三个整数参数,并通过比较返回最大的那个。
**带默认参数的函数示例:**
```cpp
#include <iostream>
using namespace std;
// 带有默认参数的版本
int findMax(int a = INT_MIN, int b = INT_MIN, int c = INT_MIN) {
if (a > b && a > c)
return a;
else if (b > a && b > c)
return b;
else
return c;
}
int main() {
int num1 = 5, num2 = 7, num3 = 3;
int maxNum = findMax(num1, num2, num3); // 可以直接调用,因为有具体传入的参数
cout << "The maximum number is: " << maxNum << endl;
// 或者仅传递两个参数,第三个用默认值
int maxNum2 = findMax(num1, num2); // 默认c为INT_MIN
cout << "Another max number with default c: " << maxNum2 << endl;
return 0;
}
```
在这里,`findMax`函数可以接受任意数量的参数,如果没有提供所有参数,则会使用默认值`INT_MIN`。
阅读全文