单片机/MCU论坛
直播中

笑尽往事

9年用户 915经验值
擅长:可编程逻辑 电源/新能源
私信 关注
[问答]

求助,为何随机数总是固定数?

#include
#include
sbit c=P2^0;
void main()
{
unsigned char a[]={0xc00xf90xa40xb00x990x920x820xf80x800x90};
P0=a[rand()%10];
c=0;
while (1)
         ;
}
以上是源程序,P0连接共阳数码管,P2.0控制数码管阳极,随机数函数产生一个随机数给P0,应该是每次数都不一样,现在是每次运行都产生7,无论重启还是开机。

回帖(1)

王禅

2023-9-28 11:42:32
这种伪随机数,如果不配置种子来初始化,否则会一直给一个数,这样才方便调试。
你要使用随机数,需要提前配一个 种子初始化,一般种子是当前时间。
一般 初始化随机数的函数时srand(),在正式使用前需要调用一次,而且最好给一个随机量来调用。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分