标题:请教一个随机数问题
只看楼主
zch007
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-11-18
 问题点数:0 回复次数:1 
请教一个随机数问题


#include <stdlib.h>
#include <stdio.h>
#include <time.h>


double rnd[10];

void randomize1()
{int i;
srand( (unsigned)time( NULL ) );
for(i=0;i<10;i++){
rnd[i]=rand()%101/100.0;
printf(" %f\n",rnd[i]);
}

}

void main()
{double b[2][10];
int i,j;

for (i=0;i<2;i++) {
randomize1();
for(j=0;j<10;j++)
b[i][j]=rnd[j];
}
for (i=0;i<2;i++){
for(j=0;j<10;j++)
printf("%f ",b[i][j]);
printf("\n");
}

}
我想让b[][]的每一个元素都是随机数,但我这样编只是一行中的各个元素不一样,两行的元素一样。
可见两次调用randomize1(),是一样的值。当然,我可以定义rnd[20],(一次产生20个随机值)解决这一个问题。
我想问的是怎么在现有的基础上,让我在main里面每次调用randomize1()都是一组新的10个值。

搜索更多相关主题的帖子: 随机数 
2005-12-19 21:10
zch007
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-11-18
得分:0 

知道了,,srand( (unsigned)time( NULL ) );
的位置错了

2005-12-19 21:55



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-38966-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.425914 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved