首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

,函数与数组有关问题

2012-03-01 
请教大家,函数与数组问题.我得程序为什么每次运行随机数字全是一样的?#include stdio.h#includestdlib.

请教大家,函数与数组问题.
我得程序为什么每次运行随机数字全是一样的?
#include <stdio.h>
#include   <stdlib.h>
#include   <time.h>
int   suiji();
void   main()
{
int   i;
int   arr[100];
int   count[10]={0,0,0,0,0,0,0,0,0,0};
for(i=0;i <100;i++)
{
arr[i]=suiji();
switch(arr[i])
{
case   0:count[0]++;break;
case   1:count[1]++;break;
case   2:count[2]++;break;
case   3:count[3]++;break;
case   4:count[4]++;break;
case   5:count[5]++;break;
case   6:count[6]++;break;
case   7:count[7]++;break;
case   8:count[8]++;break;
case   9:count[9]++;break;
}
}
for(i=0;i <100;i++)
{
printf( "%d\t ",arr[i]);
}
for(i=0;i <10;i++)
{
printf( "%d出现的次数为%d\n ",i,count[i]);
}
}
int   suiji()
{
int   i;
//srand((unsigned)time(NULL));
i=rand()%10;
return   i;
}

[解决办法]
在main中加:
srand((unsigned)time(NULL));

int main()
{
srand((unsigned)time(NULL));

//
.................

}
[解决办法]
设置随机种子
[解决办法]
看这个, 说得很清楚了:
http://blog.sina.com.cn/u/4ae81898010005fi
[解决办法]
你原来好像没有在函数上放吧,你注释掉了啊。
不过
srand((unsigned)time(NULL));
一般确实只需要放一次的。

热点排行