21xrx.com
2025-06-27 12:52:32 Friday
文章检索 我的文章 写文章
C++随机生成10个1至100之间的数,按从小到大排列
2023-07-05 05:38:35 深夜i     21     0
C++ 随机生成 排序 10个数 从小到大

在编程学习中,随机数生成是一个常见的问题。C++作为一种常用的编程语言,也有相应的生成随机数的函数。本文将介绍如何使用C++生成10个1至100之间的随机数,并按从小到大的顺序排列。

1. 随机数的生成

在C++中,生成随机数需要调用rand()函数。这个函数返回一个介于0和RAND_MAX之间的随机整数。RAND_MAX是一个常量值,表示随机数生成范围的最大值。为了得到1至100之间的随机数,我们需要进行一些计算。下面是具体的代码:

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
  srand((unsigned)time(NULL));
  for(int i=0; i<10; i++){
    int rand_num = rand()%100+1;
    cout << rand_num << " ";
  }
  cout << endl;
  
  return 0;
}

首先,我们调用了srand()函数,它用来设置随机数生成器的种子。这里我们使用当前时间作为种子,保证每次运行程序生成的随机数都是不同的。然后,使用for循环生成10个随机数。rand()%100+1表示生成1至100之间的随机整数。最后,将随机数输出到屏幕上。

2. 数组的定义与排序

接下来,我们将生成的10个随机数存储在数组中,并使用冒泡排序算法将数组中的数按从小到大的顺序排列。代码如下:

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void bubble_sort(int[], int);
int main()
{
  int arr[10];
  srand((unsigned)time(NULL));
  for(int i=0; i<10; i++){
    arr[i] = rand()%100+1;
    cout << arr[i] << " ";
  }
  cout << endl;
  bubble_sort(arr, 10);
  for(int i=0; i<10; i++){
    cout << arr[i] << " ";
  }
  cout << endl;
  return 0;
}
void bubble_sort(int arr[], int len)
{
  for(int i=0; i<len-1; i++){
    for(int j=0; j<len-i-1; j++){
      if(arr[j] > arr[j+1]){
        int temp = arr[j];
        arr[j] = arr[j+1];
        arr[j+1] = temp;
      }
    }
  }
}

首先,定义一个长度为10的数组arr,用来存储随机数。然后,使用for循环生成10个随机数,并存储在数组中。将数组输出到屏幕上。接着,调用bubble_sort()函数,对数组进行排序。最后,将排序好的数组输出到屏幕上。

3. 总结

本文介绍了如何使用C++生成10个1至100之间的随机数,并按从小到大的顺序排列。包括随机数的生成和存储、数组的定义和排序操作。在实际编程中,生成随机数和排序是程序员经常要面对的问题,相信本文所介绍的方法可以帮助大家更好地解决这类问题。

  
  

评论区