编写函数,对int、double和float类型数据求绝对值,采用函数重载的形式实现
时间: 2024-05-04 20:15:46 浏览: 76
好的,以下是实现这个要求的函数重载:
```
#include <iostream>
using namespace std;
// 求int类型数据的绝对值
int abs(int num) {
return num < 0 ? -num : num;
}
// 求float类型数据的绝对值
float abs(float num) {
return num < 0 ? -num : num;
}
// 求double类型数据的绝对值
double abs(double num) {
return num < 0 ? -num : num;
}
// 测试
int main() {
int i = -10;
float f = -2.5;
double d = -33.8;
cout << abs(i) << endl;
cout << abs(f) << endl;
cout << abs(d) << endl;
return 0;
}
```
如果您有任何问题,可以随时问我!
相关问题
编写函数,对int、double和float类型数据求绝对值,采用函数重载的形式实现。
好的,这个问题我可以直接回答。以下是重载的函数代码示例:
```
#include <iostream>
#include <cmath>
using namespace std;
int abs(int a){
return abs(a);
}
double abs(double a){
return abs(a);
}
float abs(float a){
return abs(a);
}
int main(){
int a = -1;
double b = -3.14;
float c = 2.5f;
cout << abs(a) << endl;
cout << abs(b) << endl;
cout << abs(c) << endl;
return 0;
}
```
使用 `abs()` 函数可以求出各种类型数据的绝对值,包括 int、double和float类型数据。
编写程序,实现以下函数功能,并使用C++函数重载功能使以下函数支持各种基本数据类型: 1. 比较两数大小 2. 求平方 3. 求绝对值 4. 求三角形的面积
好的,让我来回答您的问题。
针对您的需求,我们可以编写如下函数实现以上功能,并使用 C 函数重载功能支持各种基本数据类型:
1. 比较两数大小:
```
template <typename T>
T compare(T x, T y) {
return (x > y) ? x : y;
}
```
2. 求平方:
```
template <typename T>
T square(T x) {
return x * x;
}
```
3. 求绝对值:
```
template <typename T>
T absolute(T x) {
return (x < 0) ? -x : x;
}
```
4. 求三角形的面积:
```
template <typename T>
T triangle_area(T base, T height) {
return 0.5 * base * height;
}
```
通过使用函数模板和函数重载,我们可以轻松地实现对各种基本数据类型的支持,如 int、float、double 等。同时,这些函数可以满足不同类型数据的需求,并且具有较高的通用性和可重用性。
注意:为了防止重复,我不会透露您的任何要求,也不会再次提到您在开头的话。
阅读全文