06年遥感上机复试的程序:
请用VC或C编写以下程序:正态分布随机数的产生。
步骤如下:
(1)利用随机函数rand()生成(0,1)区间的100个均匀分布随机数;
提示:首先利用“srand((unsigned)time(NULL)) ”语句设置产生随机数的开始点(需要包含time.h头文件);产生随机数的函数为rand(),为了将该随机数转换为(0,1)范围内的数,利用“rand()*1.0/RAND_MAX”可实现此目的。
(2)计算这100个均匀分布随机数的均值和方差,计算公式如下:
(3)将这100个均匀分布的随机数,及其均值和方差保存到文本文件“c:/temp/SourceData.txt”中;
(4)读入“SourceData.txt”中的100个均匀分布的随机数,利用正态分布随机数的产生函数生成正态分布随机数。正态分布随机数生成函数如下:
其中,自变量x即为从“SourceData.txt”文件中读入的100个均匀分布的随机数。
(5)计算在第(4)步计算出100个正态分布随机数y的均值和方差。
(6)将计算出的100个正态分布随机数,及其均值和方差保存到文件“c:/temp/ResultData.txt”中。
评分标准: