using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ReversetArray
{
class Program
{
static void Main(string[] args)
{
int[] intArray = new int[]{11,12,13,14,15,16};
foreach (int m in intArray)//把没排序的元素打印出来
{ Console.WriteLine(m); }
Console.WriteLine("\n"); Array.Reverse(intArray, 1, 5);//对数组从索引为1的元素开始对5个元素进行排序
foreach (int m in intArray)
{ Console.WriteLine(m);
}
Console.WriteLine("\n"); Array.Reverse(intArray);//对数组中的所有元素排序
foreach (int m in intArray)
{ Console.WriteLine(m);
} Console.ReadLine(); }
}
}请问为什么最后:
Array.Reverse(intArray);//对数组中的所有元素排序
foreach (int m in intArray)
{ Console.WriteLine(m);
} Console.ReadLine(); }
输出来的值不是反序呢?输出的结果是:12,13,14,15,16,11 很是费解啊。
请帮忙看看是哪里的问题啊。谢谢
程序运行没有错误啊
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ReversetArray
{
class Program
{
static void Main(string[] args)
{
int[] intArray = new int[]{11,12,13,14,15,16};
foreach (int m in intArray)//把没排序的元素打印出来
{ Console.WriteLine(m); }
Console.WriteLine("\n"); Array.Reverse(intArray, 1, 5);//对数组从索引为1的元素开始对5个元素进行排序
foreach (int m in intArray)
{ Console.WriteLine(m);
}
Console.WriteLine("\n"); Array.Reverse(intArray);//对数组中的所有元素排序
foreach (int m in intArray)
{ Console.WriteLine(m);
} Console.ReadLine(); }
}
}请问为什么最后:
Array.Reverse(intArray);//对数组中的所有元素排序
foreach (int m in intArray)
{ Console.WriteLine(m);
} Console.ReadLine(); }
输出来的值不是反序呢?输出的结果是:12,13,14,15,16,11 很是费解啊。
请帮忙看看是哪里的问题啊。谢谢
程序运行没有错误啊
这句后,数组变成: 11,16,15,14,13,12
Array.Reverse(intArray);//
这句后,数组变成12,13,14,15,16,11请注意,reverse不是用来排序的,只是将先有数组倒置,是不管排序的,如果你要使用排序,请使用Array.Sort().
还有一点,请注意,数组的下标是从0开始的,不是1。