使用for循环无法通过用户输入填充数组。 C#
问题描述:
我最近开始研究C#,现在我试图用用户输入来填充一个数组,用for循环。当我用Int做的时候,这很好,但是双打我得到错误信息“不能隐式地将类型'double'转换为'int'。”使用for循环无法通过用户输入填充数组。 C#
namespace Homework
{
class Program
{
static void Main(string[] args)
{
double[] n = new double[10];
double i, j;
Console.WriteLine("Please give 10 numbers: ");
for (i = 0; i < 10; i++)
{
Console.Write("{0}: ", i+1);
//1st error
n[i] = Convert.ToDouble(Console.ReadLine());
}
for (j = 0; j < 10; j++)
{
Console.WriteLine("Element[{0}] = {1}", j+1, n[j]); /*2nd error*/
}
Console.ReadKey();
}
}
}
我得到这些错误消息2在在最后在第一for循环和其他的点到“N [j]的”的“N [1]”一个点WriteLine部分的代码。
答
n[i] = Convert.ToDouble(Console.ReadLine());
问题是在这里。当索引数组时,i
应该是int
。因为索引为2.5的元素没有意义。同样为j
。声明它们为int
而不是double
。
答
double i, j;
用于您的迭代中。 这两个数字必须是整数,因为数组只有整数作为索引。
一个数组没有索引1,5
。
因此,将其更改为:
int i, j;
使用'int i,j'而不是'double' – Valentin