编随机数.c

来自「数据结构及算法经典 vc源码 数据结构及算法经典 vc源码 数据结构及算」· C语言 代码 · 共 45 行

C
45
字号
/*自编随机数*/

#include"sys\types.h"
#include"sys\timeb.h"
#include<stdio.h>

#define ALPHA 3.95 /*宏定义ALPHA值为3.95*/

double init_value(void);
double random(void);

void main()
{
    float rdnmb;int m;
    rdnmb=random()*10+1; /* random()得到0--0.9的小数*/
    m=rdnmb;
    printf("\n%f\n",rdnmb);
    printf("\n%d\n",m);
    getch();
}

double random(void)
{
   static double f=-1.0;
   if(f==-1.0)
     f=init_value();
   else
     f=ALPHA*f*(1.0-f);
   return f;
}

double init_value(void)
{
   double f0;
   struct timeb *pr;
   for(;;)
     {
       ftime(pr);
       f0=pr->millitm*0.9876543*0.001;
       if(f0<0.001)
         continue;
       break;
     }
   return f0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?