[求助]为什么A=rand();A总是等于346呢?
[求助]为什么A=rand();A总是等于346呢? 搜索更多相关的解决方案:
rand
----------------解决方案--------------------------------------------------------
rand()要设范围才可以生效 例如 rand(10000)%100
----------------解决方案--------------------------------------------------------
不只是这个原因.
应该要和时间函数配合一起使用.
srand(time(NULL));//包含在#include <time.h>中
你再试试啊
----------------解决方案--------------------------------------------------------
我试了 为什么 总是在 -21700 ----- -21758之间呢?
[此贴子已经被作者于2006-7-14 10:37:48编辑过]
----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
int a;
srand((unsigned)time(NULL));
a=rand();
printf("%d\n",a);
}
再试试呀,这个就会每次不一样呀 ,rand()函数在0-32767之间
----------------解决方案--------------------------------------------------------
rand()函数是一个伪随即函数,导致每次的结果都一样,
因而必须配合srand()函数使用才能得到一个随即的结果;
----------------解决方案--------------------------------------------------------