用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫星移动通信

来源:学生作业帮助网 编辑:六六作业网 时间:2024/05/03 09:20:34
用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫星移动通信用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫星移动通信用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫

用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫星移动通信
用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数
用于仿真卫星移动通信

用C语言实现瑞利分布,莱斯分布,高斯分布的分布函数用于仿真卫星移动通信
下面共有两个程序,程序2 加入了图形显示
程序1
这个程序就是你要的.
# include "stdio.h"
# include "math.h"
# include "stdlib.h"
# include "math.h"
# include "dos.h"
# define MAX_N 3000 /*这个值为N可以定义的最大长度*/
# define N 100 /*产生随机序列的点数,注意不要大于MAX_N*/
/*产生均匀分布的随机变量*/
void randa(float *x,int num);
/*产生瑞利分布的随机变量*/
void randr(float *x,int num);
/*产生标准高斯分布的随机变量*/
void randn(float *x,int num);
/*产生莱斯分布的随机变量*/
void randl(float *x,float a,float b,int num);
void fshow(char *name,float *x,int num);
main()
{
float x[N];
int i;
/*
randa(&x,N);
randr(&x,N);
randl(&x,10,10,N);
*/
randn(&x,N);
/*此时x[N]就是所需要的高斯分布的序列*/
/*显示该序列*/
fshow("x",&x,N);
getch();
}
void randa(float *x,int num)
{
int i;
struct time stime;
unsigned seed;
gettime(&stime);
seed=stime.ti_hund*stime.ti_min*stime.ti_hour;
srand(seed);
for(i=0;i