51单片机C语言问题,怎么实现一个0-9随机排列的数列?如a[10]={2,5,6,9,1,4,8,3,4,8,0,7 },

2024-11-28 19:28:25
推荐回答(2个)
回答1:

先有randomize初始化,初始化一次就可以了,然后可以若干次用random,每次用random可以获得一个随机数
#include

main()
{
randomize();

for(i = 0; i < N; i++) {
a[i] = random(10);
}
}

回答2:

我很久以前用过51了,现在用的是ARM了,如果要我做的话你可以让定时器工作在自填充模式下,然后你把TH或者TL里面的值读出来,然后%10,就可以产生0-9随机数了,在PC机上C语言产生随机数也是这个原理,每次去读那个10ms单位的计时内存值。程序就不用写了吧,给你个思路,呵呵,希望你能听懂。