概述:使用c库函数rand()和srand()函数产生伪随机数,代码可选择产生整形和浮点型的随机数,用随机数模拟AD值,作为后几章滤波算法的原始采样值。
code
/***************************************************
*FUNC:产生伪随机数
*AUTHOR:GOLF/FXB
*COMPILE:GCC
*DATE:2016/08
***************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
int Get_AD_Int(int min,int max)
{
return (rand()%(max-min+1)+min);
}
float Get_AD_Float(float min,float max)
{
return (rand()/(RAND_MAX+0.0))*(max-min);
}
void main(char argc,char **argv)
{
unsigned int data_int = 0;
float data_float = 0.0;
char i = 0;
srand((unsigned int)time(NULL));
if(argc < 2)
{
printf("Input parameters are not enough\n");
return;
}
if(strcmp(argv[1],"int") == 0)
{
for(i=0;i<10;i++)
{
data_int = Get_AD_Int(0,10);
printf("%d\n",data_int);
}
}
if(strcmp(argv[1],"float") == 0)
{
for(i=0;i<10;i++)
{
data_float = Get_AD_Float(0.0,10.0);
printf("%f\n",data_float);
}
}
}