C编程:生成一个介于-2,2之间的随机数(x),然后更新x

问题描述 投票:0回答:1

我试图编写一个程序来随机生成[-2,2]之间的数字(项x)。然后我想使用while循环更新术语。

我知道如何使用drand48()和stand(),但我知道我不能使用drand48(),因为它只计算0到1之间的数字。

我只用了大约一个月的时间来使用C所以我仍然很困惑这一切。谢谢!

c while-loop srand
1个回答
0
投票

如果你调用drand48(),你得到范围[0.0,1.0)。

(这是一个半开的间隔,因为drand不会返回1.0,只有非常接近1的东西。)

如果将返回值drand48()乘以4,则得到范围[0.0,4.0)。

如果从4*drand48()中减去2,则得到范围[-2.0,2.0)。

所以,因此:

4*drand48() - 2

PS:我假设您正在尝试生成实数,而不是整数。如果您要获取整数,请使用@WeatherVane发布的rand()解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.