21xrx.com
2024-12-27 22:01:38 Friday
登录
文章检索 我的文章 写文章
C++重载函数实现三个数从小到大排序
2023-07-07 02:22:42 深夜i     --     --
C++ 重载函数 三个数 从小到大排序

C++ 重载函数是 C++ 中的一个重要概念,它允许我们在同一个作用域中定义多个同名函数,只要它们的参数类型、个数或顺序不同。利用 C++ 重载函数的特性,我们可以方便地实现三个数的从小到大排序功能。

实现方法如下:

首先,我们需要定义一个名为 sort 的函数,该函数的参数类型可以是 int、float 或 double,分别用于支持整数、小数和双精度浮点数的排序。在该函数内部,我们可以使用 if 语句判断三个数的大小关系,并使用交换变量的方式对它们进行排序。

下面是实现的示例代码:


#include <iostream>

using namespace std;

void sort(int& a, int& b, int& c)

{

  int temp;

  if (a > b)

  

    temp = a;

    a = b;

    b = temp;

  

  if (a > c)

  

    temp = a;

    a = c;

    c = temp;

  

  if (b > c)

  

    temp = b;

    b = c;

    c = temp;

  

}

void sort(float& a, float& b, float& c)

{

  float temp;

  if (a > b)

  

    temp = a;

    a = b;

    b = temp;

  

  if (a > c)

  

    temp = a;

    a = c;

    c = temp;

  

  if (b > c)

  

    temp = b;

    b = c;

    c = temp;

  

}

void sort(double& a, double& b, double& c)

{

  double temp;

  if (a > b)

  

    temp = a;

    a = b;

    b = temp;

  

  if (a > c)

  

    temp = a;

    a = c;

    c = temp;

  

  if (b > c)

  

    temp = b;

    b = c;

    c = temp;

  

}

int main()

{

  int a = 3, b = 2, c = 1;

  float d = 2.5f, e = 1.2f, f = 3.7f;

  double g = 6.3, h = 4.1, i = 5.2;

  sort(a, b, c);

  sort(d, e, f);

  sort(g, h, i);

  cout << "(int) a = " << a << ", b = " << b << ", c = " << c << endl;

  cout << "(float) d = " << d << ", e = " << e << ", f = " << f << endl;

  cout << "(double) g = " << g << ", h = " << h << ", i = " << i << endl;

  return 0;

}

在上面的示例代码中,我们定义了三个 sort 函数分别对应支持整数、小数和双精度浮点数的排序。在主函数中,我们定义三组数据分别进行测试,并输出排序后的结果。编译运行程序后,我们可以看到以下输出:


(int) a = 1, b = 2, c = 3

(float) d = 1.2, e = 2.5, f = 3.7

(double) g = 4.1, h = 5.2, i = 6.3

以上代码实现了三个数从小到大排序的功能,并充分展示了 C++ 重载函数在实际开发中的应用。学好 C++ 重载函数,可以提高代码的可读性、可维护性和可扩展性,从而写出更加优秀的程序。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复