21xrx.com
2024-11-22 12:50:22 Friday
登录
文章检索 我的文章 写文章
C++程序:输出并排序每个数位
2023-06-26 18:05:12 深夜i     --     --
C++ 输出 排序 数位 循环

在编程语言中,C++是一种强大的适用于许多场景的语言。其中,对于数字相关的操作,C++也提供了丰富的支持。本文就以C++为例,介绍如何输出并排序每个数位。

首先,我们需要了解C++中数字的表示方法。在C++中,数字可以用各种数据类型表示,包括整型(int, long long等)和浮点型(float, double等)。为了方便起见,我们可以将一个数字转化为字符串来处理。这样也能避免一些数据类型范围的限制。

接着,我们需要知道如何遍历一个数字的每个数位。这可以通过模10的方法实现。具体来说,我们可以用一个while循环,不断将数字除以10,每次得到的余数即为当前数位的值。当数字除到0时,循环结束。

在遍历每个数位的过程中,我们可以将它们存储在一个数组中。接下来,我们需要按照数位大小排序。这可以通过冒泡排序算法实现。冒泡排序算法通过比较相邻的元素,将较大的元素交换到后面,从而逐渐将数组排序。

下面是代码示例:


#include <iostream>

#include <string>

using namespace std;

int main() {

  int num;

  cout << "请输入一个数字:";

  cin >> num;

  string str = to_string(num);

  int n = str.size();

  int arr[n];

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

    arr[i] = str[i] - '0';

  }

  for (int i = 0; i < n - 1; i++) {

    for (int j = 0; j < n - i - 1; j++) {

      if (arr[j] > arr[j+1]) {

        int temp = arr[j];

        arr[j] = arr[j+1];

        arr[j+1] = temp;

      }

    }

  }

  cout << "每个数位排序后的结果为:";

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

    cout << arr[i] << " ";

  }

  cout << endl;

  return 0;

}

在本程序中,我们首先让用户输入一个数字,并将其转化为字符串类型。接着,我们将每个数位存储到一个数组中,并按照冒泡排序算法进行排序。最终将排序后的数组打印输出。

综上,本文以C++语言为例,介绍了如何遍历每个数字数位,并通过冒泡排序算法实现排序。希望读者通过本文的学习,对C++语言有更深入的了解。

  
  

评论区

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