我正在使用c#生成0到10000之间的1000个随机数。输出需要两个小数位,并且显示如下
1 18.92
2 874.32
3 7182.56
这是我的代码:
Random random = new Random();
float randomNumber = random.Next(0, 10001);
string rndnumber = randomNumber.ToString("0.00");
for (int i = 1; i<= 1000; i++)
{
for (int count = 1; count <= 1000; count++)
{
writer.Write("{0},\n {0:0.0}", count, rndnumber);
}
但到目前为止,我的输出看起来像这样:
1, 1.02, 2.03, 3.04, 4.05, 5.06, 6.07, 7.08, 8.09, 9.010, 10.011, 11.012
我错过了什么?
答案 0 :(得分:0)
我自己弄明白,使用double
和Math.Round
获取两位小数
以下是答案:
Random random = new Random();
for (int count = 1; count <= 1000; count++)
{
double r = Math.Round((random.NextDouble() * 10001),2);
writer.WriteLine("{0} \n {1}",count, r);
}