21xrx.com
2024-06-03 06:10:55 Monday
登录
文章检索 我的文章 写文章
C++随机生成10个1至100之间的数,按从小到大排列
2023-07-05 05:38:35 深夜i     --     --
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之间的随机数,并按从小到大的顺序排列。包括随机数的生成和存储、数组的定义和排序操作。在实际编程中,生成随机数和排序是程序员经常要面对的问题,相信本文所介绍的方法可以帮助大家更好地解决这类问题。

  
  

评论区

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