21xrx.com
2024-11-05 17:25:48 Tuesday
登录
文章检索 我的文章 写文章
C++输入5个职工工资,排序并输出结果
2023-07-04 18:14:34 深夜i     --     --
C++ 输入 职工 工资 排序 输出

C++语言是一种高级的编程语言,被广泛应用于软件开发和计算机科学领域。在实际的编程项目中,经常需要进行数据排序和输出结果的操作。本文将介绍如何使用C++输入5个职工工资,进行排序并输出结果。

首先,我们需要定义一个数组来存储5个职工的工资数据。在C++中,数组可以通过以下方式进行定义:

int incomes[5];

定义完成后,我们可以通过cin语句来逐个输入5个职工的工资数据。例如:

cout << "请输入5个职工的工资数据:" << endl;

for (int i = 0; i < 5; i++) {

  cin >> incomes[i];

}

输入数据完成后,我们需要使用一种排序算法来对职工工资进行排序。在本文中,我们选择使用快速排序算法来实现数据排序。快速排序算法是一种基于递归的排序算法,其核心思想是通过将待排序数组分成两部分,分别对这两部分进行排序,最终将两部分排序结果合并成一个有序数组。

下面是使用C++实现快速排序算法的代码:

void quicksort(int left, int right, int* arr) {

  int l, r, temp, mid;

  l = left;

  r = right;

  mid = arr[(left + right) / 2];

  while (l <= r) {

    while (arr[l] < mid) l++;

    while (arr[r] > mid) r--;

    if (l <= r) {

      temp = arr[l];

      arr[l] = arr[r];

      arr[r] = temp;

      l++;

      r--;

    }

  }

  if (left < r) quicksort(left, r, arr);

  if (right > l) quicksort(l, right, arr);

}

这里使用了C++中的递归函数来实现快速排序算法。函数的参数包括:需要排序的数组范围左右边界left和right,以及一个指向数组首元素的指针arr。在函数体中,我们首先选取数组中间值作为枢纽元素,将待排序数组分为两部分,并使用while循环来实现对数组的排序操作。

当排序完成后,我们可以使用for循环来输出排序后的结果。例如:

cout << "排序结果为:" << endl;

for (int i = 0; i < 5; i++) {

  cout << incomes[i] << " ";

}

cout << endl;

最终,我们可以将输入和排序结果的代码整合在一起,形成完整的程序代码。例如:

#include

using namespace std;

void quicksort(int left, int right, int* arr) {

  int l, r, temp, mid;

  l = left;

  r = right;

  mid = arr[(left + right) / 2];

  while (l <= r) {

    while (arr[l] < mid) l++;

    while (arr[r] > mid) r--;

    if (l <= r) {

      temp = arr[l];

      arr[l] = arr[r];

      arr[r] = temp;

      l++;

      r--;

    }

  }

  if (left < r) quicksort(left, r, arr);

  if (right > l) quicksort(l, right, arr);

}

int main() {

  int incomes[5];

  cout << "请输入5个职工的工资数据:" << endl;

  for (int i = 0; i < 5; i++) {

    cin >> incomes[i];

  }

  quicksort(0, 4, incomes);

  cout << "排序结果为:" << endl;

  for (int i = 0; i < 5; i++) {

    cout << incomes[i] << " ";

  }

  cout << endl;

  return 0;

}

运行代码后,输入5个职工的工资数据后,程序会对这些数据进行排序,并输出排序后的结果。通过本文的介绍,我们可以看到,使用C++实现数据排序和输出操作并不难,只需要掌握基本的排序算法和语言特性即可。希望读者可以通过本文的介绍,进一步加强对C++编程语言的理解和掌握。

  
  

评论区

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