如何在C ++中更改数组的顺序

优素福萨拉

我试图像这样更改char数组的顺序:

char arr_char[]="ABCDEFGHIJABCDEFGHIJ";

我在以下代码中使用rand()函数:

#include <iostream>
#include <cstdlib>
#include <ctime>


using namespace std;



int main()
{
  char arr_char[]="ABCDEFGHIJABCDEFGHIJ";
  int arrSize=sizeof(arr_char)-1;

  srand(time(0));

 for(int i=0;i<20;i++)
 {
    cout<<arr_char[rand() % arrSize]<<" ";
 }
}

但是rand函数将某些字符重复两次以上,我想改变每个字符仅重复两次的数组顺序。

Ap31

这可能就足够了

#include <iostream>
#include <string>
#include <algorithm>

using namespace std;

int main()
{
    string arr_char = "ABCDEFGHIJABCDEFGHIJ";
    random_shuffle(arr_char.begin(), arr_char.end());
    cout << arr_char;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章