2017-02-27 85 views
1

我想创建一个1000个元素的数组。每个元素应介于99之间0和 我首先重现试过了,其实,我不能正确理解这个说教例如:随机化功能

#include <stdio.h> 
#include <stdlib.h> 
#define DIM 1000 

int myVect[DIM]; 
int i; 
int main(){ 
randomize();      /∗ Initialize randomize*/ 
    for (i =0; i < DIM ; i ++) 
     myVect[i] = random(100); 
return 0; 
} 

在编译时,我得到了errorwarningnote

warning: implicit declaration of function ‘randomize’ (1) 
error: too many arguments to function ‘random’   (2) 
/usr/include/stdlib.h:282:17: note: declared here  (3) 

我发现资源从两个职位:

不幸的是,由于我经验不足,我不能够获得的含义我发布的教学示例。

(1)在其库是randomize?我一直未能发现。

(2)Random不应该有一个参数。因此,为什么在它的例子中带有100,因为它应该确定随机数的范围?

(3)这是否注意到指明random声明?

谢谢你的耐心等待。

+2

这是一个坏榜样。 C中没有这样的函数,用标准库 –

+0

谢谢@EugeneSh的确认。那么,这个例子的原因是什么?它的教学目的是什么? – Worice

+0

也许你最好问问它的作者。 –

回答

6

randomize()random()不是标准C库函数。您可以改用srandrand

srand((unsigned)time(NULL));      
for (i =0; i < DIM ; i ++) 
    myVect[i] = rand()%100; 

对于time()功能,您需要包括<time.h>头。