C# 人口及;对数组排序
所以基本上我需要做的是创建一个数组,让用户填充数组,然后对数组进行气泡排序。我对我要写的东西有一个基本的想法,问题是我一直在运行程序,然后一旦我输入10个值,我就会得到错误消息“索引超出数组边界”。我对代码做了一些修改,似乎无法解决这个问题。我还是新手,所以请对我耐心点C# 人口及;对数组排序,c#,arrays,bubble-sort,C#,Arrays,Bubble Sort,所以基本上我需要做的是创建一个数组,让用户填充数组,然后对数组进行气泡排序。我对我要写的东西有一个基本的想法,问题是我一直在运行程序,然后一旦我输入10个值,我就会得到错误消息“索引超出数组边界”。我对代码做了一些修改,似乎无法解决这个问题。我还是新手,所以请对我耐心点 class Program { public static void Main(string[] args) { Console.Write("\n\n"); Console.Wr
class Program
{
public static void Main(string[] args)
{
Console.Write("\n\n");
Console.Write("Input 10 or less values then hit enter to sort values");
Console.Write("\n\n");
int[] Arr = new int[10];
for ( int i = 0; i <= 10; i++)
{
Console.Write("Input Value\n");
Arr[i] = int.Parse(Console.ReadLine());
}
for (int i = 0; i <= 10; i++)
{
for (int j = Arr.Length - 1; j > i; j--)
{
if (Arr[j] < Arr[j - 1])
{
var temp = Arr[j];
Arr[j] = Arr[j - 1];
Arr[j - 1] = temp;
}
}
}
foreach (int i in Arr)
{
Console.WriteLine(i);
}
Console.Read();
}
}
类程序
{
公共静态void Main(字符串[]args)
{
控制台。写入(“\n\n”);
编写(“输入10个或更少的值,然后按enter键对值进行排序”);
控制台。写入(“\n\n”);
int[]Arr=新的int[10];
for(int i=0;iReplacefor(int i=0;我请调试)。索引越界是非常描述性的,ans在您发布的代码中for(int i=0;我感谢John,我觉得自己很笨,我一直忘记数组从0开始,而不是1。但希望这个错误会留在我的脑海中。“索引越界”对我来说,数据无法访问不是因为值超过了数组的大小。正如你所说,我在这方面还是很新的。@DeprievedSense不必担心。随着时间的推移,常见的错误消息会变得很熟悉:)谢谢!这帮助太多了,希望慢慢地我会在这方面做得更好。
for ( int i = 0; i < arr.Length; i++)
{
// Do things with arr[i]
}