作业帮 > 综合 > 作业

怎么用C语言或者C++在自己规定的范围内,比如在(1,5,9,3,7)这五个数内产生一个随机数.

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/13 02:16:18
怎么用C语言或者C++在自己规定的范围内,比如在(1,5,9,3,7)这五个数内产生一个随机数.
C++语言或C中,怎么实现随机产生一个数,在自己规定的范围内,比如在(1,5,9,3,7)这五个数内产生一个随机数.
每次程序运行的结果都不一样 rand ,最好把源程序整段发上来,
怎么用C语言或者C++在自己规定的范围内,比如在(1,5,9,3,7)这五个数内产生一个随机数.
void main()
{
int m = 5; //数组下标的结束
int n = 0; //数组下标的开始
int x = 0;
int a[5] = {1,3,5,7,9};
for(int i = 0 ; i < 20 ; i++)
{
x = rand()*(m-n)/RAND_MAX+n;
cout
再问: m-n=5 数组下标不是才到4吗?a[0]~a[4], 程序运行时没错, x = rand()*(m-n)/RAND_MAX+n;是实现由0到5的随机数吧。这个小地方不懂 还有就是怎么实现每次的运行结果不一样,详细点,我知道用srand,不过调了好久没弄出来
再答: 嗯,你这个问题我也想过,后来测试了一下,如果是0到4,你会发现随机数据里面没有9,如果是1到5,你也会发现没有1的出现,当然,我也试过越界的情况,输出了随机数据很大,具体的情况你可以自己试试。至于为什么,就要去看看算法是怎样实现的,O(∩_∩)O~(rand生成的范围为 [0, 范围数组的长度])