比如我想在1—100中,随机产生一个数。怎么产生?
是要用到srand()和rand()吗?我不会,请指教?谢谢!

解决方案 »

  1.   

    程序启动时:
    srand((unsigned int)GetTickCount());
    需要产生随即数时:
    n = int(double(rand()) / RAND_MAX * 100);
    if (n == 100)
    n--;
    理论上这样比简单取余数更可靠
      

  2.   

    不好意思,上边是0——99的,
    n = int(double(rand()) / RAND_MAX * 100) + 1;
    if (n == 101)
    n--;
      

  3.   

    // 随机种子
    srand((unsigned)time(NULL));
    // 随机数
    n = rand()%100+1;