rand()函数的使用

#include <stdio.h>
#include <stdlib.h>
int main(){    
    int a = rand();    
    printf("%d\n", a);    
    return 0;
}

多次执行程序发现结果都相同。因为种子在每次启动计算机时是随机的,但计算机启动以后它就不再变化了。

#include <stdio.h>
#include <stdlib.h> //rand()srand()
#include <time.h>   //time()
int main(){    
    srand((unsigned)time(NULL)); //生成随机数之前先进行播种    
    int a = rand();    
    printf("%d\n", a);    
    return 0;
}

通过循环生成多个随机数

void input_fun(int num[], int n)
{
    srand((unsigned)time(NULL)); //生成随机数之前先进行播种
    for (int i = 0; i < n; i++)
        num[i] = rand();
    print_fun(num, n);
}

生成一定范围内的随机数

void input_fun(int num[], int n)
{
    srand((unsigned)time(NULL)); //生成随机数之前先进行播种
    for (int i = 0; i < n; i++)
        num[i] = rand() % 100 + 5; //生成5-99之间的随机数
    print_fun(num, n);
}
//公式
rand() % a + b;
//最大值为a-1,最小值为b;