如何生成0.4到0.7之间的随机数?

如何用C++生成0.4到0.7之间的浮点型
随机数?

#include <stdlib.h>
#include <stdio.h>
#include <time.h>//使用当前时钟做种子
using namespace std;
int main( void )
{
    int i;
    srand( (unsigned)time( NULL ) );//初始化随机数

    for( i = 0; i < 8;i++ )
    {
        float b=rand()%31/100.00;  
        b=b+0.40;
        cout<<b<<endl;
    }
}

如有帮助,望采纳!

最简单的方式就是放大多少倍以后,然后再缩小多少倍,缺点是小数位就被固定了;
比如你生成400-700的随机数,然后缩小1000倍,

很简单,产生一个0-1的随机数
x0.4是不是0-0.4之间了
+0.3
是不是0.4~0.7之间了?