C ++随机填充数组中的4个字母

时间:2013-07-04 03:47:21

标签: c++ loops random srand

我真的真的被困在这里了 我一直试图用一组4(A,C,G,T)中的随机大写字母填充数组 然而,我的程序只会以相同的顺序返回4个字母,直到它填满整个数组,第一个字符每次尝试都会开始不同 这是代码

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

using namespace std;

char letters[500];
int set[] = {65, 67, 84, 71};
int size = 4;
void runLength(char[]);
void generateRandom(int);

void generateRandom(int i)
{
    int character = 0;
    character = rand()%size;
    letters[i] = set[character];
    cout<<letters[i];
}

int main()
{
    srand( time( 0 ) );

    for(int i = 0; i < 500; i++)
    {
        generateRandom(i);
    }

    runLength(letters);

    getchar();
    return 0;
}

这个节目的结果总是'A''''''''''''''''''''''''''''''''''''''''''''' 基本上随机过程似乎要重复,0,1,2,3,0,1,2,3重复,我该如何解决这个问题?

0 个答案:

没有答案