先是srand(int max)设置随机数的最大值,后是用int rand()得到随数。

解决方案 »

  1.   

    包含stdlib.h即可。
    延时可以用Sleep(DWORD dwMilliseconds),要包含winbase.h。只是不太准。
      

  2.   

    给你一个例子
    delay(DWORD dwMilliSeconds)
    {
             DWORD start,stop;
    int i=0;
    start=GetTickCount();
    for(stop=GetTickCount();stop<start+dwMilliSeconds;)
    stop=GetTickCount();
    }
    能精确到一毫秒
      

  3.   

    还有一个
    LARGE_INTEGER litmp1,litmp2;
    QueryPerformanceFrequency(&litmp1); // 获得计数器的时钟频率
    dfFreq = (double)litmp1.QuadPart;
    delay(int us)
    {
    QueryPerformanceCounter(&litmp2); // 获得初始值
    QPart1 = litmp2.QuadPart;
    while((double)(litmp.QuadPart-QPart1)/dfFreq < (double)ms/100000)
    QueryPerformanceCounter(&litmp);
    }
    经过试验可以精确到50us,但以上两个delay都要占用cpu时间,若用sleep(dwMilliseconds)则不占用cpu。另外,要定时,还可以用多媒体定时器
      

  4.   

    void srand( unsigned int seed );
    Sets a random starting point
      

  5.   

    方法一:用sleep(miniseconds)函数
    这个方法最好,不站用系统时间
    方法二:用__asm关键字嵌入汇编用NOP指令延时
    方法三:用SetTimer API至于随即数可以这样
    srand((unsigned int)time())//用系统时间做种