6.编写一个内联函数int max3(int,int,int)实现求3个整数中的最大数,3个整数作为参数,最大数作为返回值。在主函数中任意输入三个整数,调用内联函数求出最大数并输出。
时间: 2023-08-31 13:25:58 浏览: 182
ch06 过程封装--函数.ppt
### 回答1:
```c++
#include <iostream>
using namespace std;
inline int max3(int a, int b, int c) {
int max_num = a > b ? a : b;
return max_num > c ? max_num : c;
}
int main() {
int num1, num2, num3;
cout << "请输入三个整数:" << endl;
cin >> num1 >> num2 >> num3;
int max_num = max3(num1, num2, num3);
cout << "最大数为:" << max_num << endl;
return 0;
}
```
### 回答2:
内联函数是在调用处将函数代码直接插入,而不是通过函数调用的方式执行代码,以提高程序的运行效率。在C++中,内联函数可以通过在函数声明和定义前面加上关键字inline来实现。
下面是一个使用内联函数求3个整数中最大数的例子:
```cpp
#include<iostream>
using namespace std;
// 内联函数求三个整数中的最大数
inline int max3(int a, int b, int c)
{
return (a > b ? (a > c ? a : c) : (b > c ? b : c));
}
int main()
{
int num1, num2, num3;
cout << "请输入三个整数:" << endl;
cin >> num1 >> num2 >> num3;
int maxNum = max3(num1, num2, num3);
cout << "最大数为:" << maxNum << endl;
return 0;
}
```
在该例子中,定义了一个内联函数`max3`,它接受三个整数作为参数,并返回其中最大的数。在主函数中,用户可以输入三个整数,然后调用内联函数`max3`求出最大数,并输出结果。
注意:内联函数适用于代码量较小的情况,适当使用内联函数可以提高代码的执行效率。但是,编译器并不一定会将其作为内联函数处理,具体是否进行内联展开由编译器决定。
### 回答3:
内联函数是一种特殊的函数,可以在每次调用时直接将函数体嵌入到调用位置,而不是通过函数调用的方式执行。内联函数的主要优点是减少了函数调用的开销,可以提高程序的执行效率。
下面是一个使用内联函数实现求三个整数中最大数的示例程序:
```cpp
#include <iostream>
// 定义内联函数
inline int max3(int a, int b, int c) {
return (a > b ? (a > c ? a : c) : (b > c ? b : c));
}
int main() {
int num1, num2, num3;
// 从用户输入获取三个整数
std::cout << "请输入三个整数:" << std::endl;
std::cin >> num1 >> num2 >> num3;
// 调用内联函数求出最大数
int max = max3(num1, num2, num3);
// 输出最大数
std::cout << "最大数为:" << max << std::endl;
return 0;
}
```
通过上述程序可以实现输入任意三个整数,并调用内联函数`max3()`求出最大数并输出。由于`max3()`函数是内联函数,每次调用时会将函数体嵌入到调用位置,无需通过函数调用的方式执行,可以减少函数调用的开销,提高程序的执行效率。
阅读全文