21xrx.com
2024-11-10 00:53:39 Sunday
登录
文章检索 我的文章 写文章
C++随机生成10个1到100之间的数,并进行排序
2023-06-30 02:33:25 深夜i     --     --
C++ 随机生成 数字 排序 1-100

C++是一种强大的编程语言,可以用它来实现各种各样的功能。在本文中,我们将使用C++来生成10个1到100之间的随机数,并将它们进行排序。这不仅仅展示了C++语言的功能,同时也是一种练习算法的好方法,因为我们可以使用各种排序算法来解决这个问题。

为了生成随机数,我们使用了C++的随机数生成器,它可以生成从0到RAND_MAX之间的随机数。我们需要将这种随机数映射到1到100之间,我们可以使用以下公式:

int random_number = rand() % 100 + 1;

此代码将生成从1到100之间的随机数。我们将使用这个代码10次,从而生成10个随机数。这些随机数将被存储在一个数组中,我们可以使用冒泡排序,选择排序,插入排序等任意一种排序算法对它们进行排序。

在本文中,我们将使用冒泡排序来对这些数字进行排序。冒泡排序是一种基本的排序算法,它将相邻的元素比较,并交换它们的位置,直到整个数组都被排好序为止。以下是冒泡排序的代码实现:

void bubble_sort(int arr[], int n) {

  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;

      }

    }

  }

}

这段代码将数组按照从小到大的顺序排序。我们可以将生成的随机数放入一个数组中,并将这个数组作为参数传递给bubble_sort()函数。以下是完整的代码实现:

#include

#include

#include

void bubble_sort(int arr[], int n) {

  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;

      }

    }

  }

}

int main() {

  std::srand(std::time(nullptr));

  int arr[10];

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

    arr[i] = std::rand() % 100 + 1;

    std::cout << arr[i] << ' ';

  }

  std::cout << std::endl;

  bubble_sort(arr, 10);

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

    std::cout << arr[i] << ' ';

  }

  std::cout << std::endl;

  return 0;

}

这个程序将首先生成10个随机数,并将它们输出到终端。然后,它将调用bubble_sort()函数对这个数组进行排序,并将排好序的数组输出到终端。这个程序不仅实现了对随机数的排序,同时也展示了C++的各种语法,包括存储、处理数组,以及调用函数等。

在总结本文的时候,我们可以说,C++是一种强大的编程语言,可以用它实现各种算法。在本文中,我们使用了C++中的随机数生成器和冒泡排序算法来生成10个随机数并将它们排好序。这个示例程序不仅展示了如何使用随机数和排序算法处理数据,同时也展示了C++的语法和特性。这可以为初学者提供一个好的基础,让他们更好地理解C++编程语言。

  
  

评论区

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