使用两个函数生成随机数组

时间:2018-05-29 20:10:52

标签: c arrays pointers random

我正在尝试生成一个数组,其元素是一个范围内的随机数(在最小值和最大值之间),但出了点问题。代码如下。

void cria_aleatorio(int *vetor, int tamanho, int min, int max) {
    int i=0;

    for(i=0; i<tamanho; i++)
    {
        vetor[i] = (rand() % (max - min + 1)) + min;
    }
}

void print_vetor(int *vetor, int tamanho){
    printf("%d", vetor[tamanho]);
    printf("%d", tamanho);
}

1 个答案:

答案 0 :(得分:3)

正如评论中所指出的,您的print_vetor功能是错误的。您需要一个循环来迭代数组中的每个元素,就像生成随机数时一样。

void print_vetor(int *vetor, int tamanho){
    unsigned int i = 0;
    for (i = 0; i < tamanho; i++) {
        printf("%d, ", vetor[i]);
    }
    printf("\n%d\n", tamanho);
}