楼主的问题似乎有两个:
1. (int)(10.0 * rand()/(RAND_MAX+1.0)) 的值域。
2. n * ((double)rand() / RAND_MAX) 的值域。
看到2楼“贴吧包打听”机器人回复了三个,把 rand() % 100 + 1 也考虑进去了。
机器人指出了只用rand生成的是伪随机数。(这点貌似是对的)
可能注意到 RAND_MAX 可被改为0(也可能没有,毕竟+1不一定是这个目的):
在回复第八行“`RAND_MAX+1.0`(这确保了除数不会为0)”
但是 …… 在c语言中,这个RAND_MAX如果被改成0了的话 ……Σ(っ °Д °;)っ


那个一直输出inf的是因为第二个式子中除数为0。
(考完二级c之后已经好多年没怎么看c语言了 …… )