0

我的问题是如何让我的数组接受十进制值。该代码适用于整数,但我需要针对十进制值进行调整。我尝试使用Convert.ToDecimal(Console.ReadLine()),但它不起作用。这是错误消息:

错误 1 ​​无法将类型“ decimal”隐式转换为“ int”。存在显式转换(您是否缺少演员表?)

问题是,如何在 for 循环中使用小数?

我真的需要它是这样的,因为我不需要为我的数组的值数量或类似的东西输入预值数字。我需要输入数组大小的数字,然后输入一个小数性质的数字。

这是代码:

public int Unos_brojeva() 
{
    Console.WriteLine("Unesi broj clanova niza:");
    int [] broj = new int[Convert.ToInt32 (Console.ReadLine())];
    Console.WriteLine("Unesi brojeve:");
    for (int i = 0; i < broj.Length; i++)
    { 
        broj[i] = (Convert.ToInt32 (Console.ReadLine()));
    }

    Console.WriteLine("Unos je zavrsen");
    Console.ReadLine();
    return 0;
}

static void Main()
{
    BrojniNiz brojka;
    brojka = new BrojniNiz();
    brojka.Unos_brojeva();
}
4

2 回答 2

3

您是否尝试将其更改为十进制数组 ( decimal[])?

decimal[] broj = new decimal[Convert.ToInt32(Console.ReadLine())];
for (int i = 0; i < broj.Length; i++)
{
    broj[i] = Convert.ToDecimal(Console.ReadLine());
}
于 2013-10-12T03:12:03.207 回答
1

好的,所以如果您希望数组中的输入值是小数,那么您应该将数组初始化为十进制数组。

int[] intArray = new int[<size of the array>];
decimal[] decimalArray = new decimal[<size of this array>];

希望有帮助。

于 2013-10-12T03:12:54.390 回答