需要掌握的部分语法:
1.数组的定义:(这里和C不同的是,先括号,后变量名字)
<strong>(1) int[] Inum; string[] Inum;2.</strong></strong>
<strong>(2) int[] Inum = new int[10];</strong></strong>
<strong>(3) int[] Inum; Inum = new int[10]; </strong>
2.输入(用for循环+convert类输入);
3.处理数组的类:Array类
(1)sort:升序排序(PS:会把开范围的数组整体排序,所以会出错;所以按数组需要开)
(2)IndexOf():查找首次出现元素位置; LastIndexOf():查找最后一次元素出现位置;
(3)Reverse:逆序
(4)Copy:复制a数组到b数组;
(一)数组的快排
<strong>using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int n,i; Console.WriteLine("请输入数组大小:"); n = Convert.ToInt32(Console.ReadLine()); int[] num = new int[n];///*按需求开数组 Console.WriteLine("请输入n个数字:"); for(i=0;i<n;i++) { num[i] = Convert.ToInt32(Console.ReadLine()); } Console.WriteLine("未排序时的数组为:"); for(i=0;i<n;i++) { Console.Write(num[i] + " "); } Array.Sort(num);//*排序 Console.WriteLine(); Console.WriteLine("排序后的数组为:"); for (i = 0; i < n; i++) { Console.Write(num[i] + " "); } Console.ReadKey(); } } } </strong>
(二)数组元素位置的查询:
<strong>using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 查找1 { class Program { static void Main(string[] args) { int i; Console.WriteLine("请输入数组大小"); int n; n = Convert.ToInt32(Console.ReadLine()); int[] a = new int[n+1]; Console.WriteLine("请输入"+n+"个数"); for( i =1 ; i<=n;i++) { a[i]=Convert.ToInt32(Console.ReadLine()); } Console.WriteLine("请输入需要查找的数"); int b, c,search; search=Convert.ToInt32(Console.ReadLine()); b = Array.IndexOf(a, search); Console.WriteLine("元素" + search + "首次出现的位置为:" + b); c = Array.LastIndexOf(a, search); Console.WriteLine("元素" + search + "最后一次出现的位置为:" + c); Console.ReadKey(); } } } </strong>
(三)数组的逆序:PS(Reverse函数逆序后是从下标为0开始计数的)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 查找1 { class Program { static void Main(string[] args) { int i; Console.WriteLine("请输入数组大小"); int n; n = Convert.ToInt32(Console.ReadLine()); int[] a = new int[n]; Console.WriteLine("请输入"+n+"个数"); for( i =0; i<n;i++) { a[i]=Convert.ToInt32(Console.ReadLine()); } Console.WriteLine("未逆序的数组为:"); for(i=0; i<n;i++) { Console.Write(a[i]+" "); } Console.WriteLine(); Console.WriteLine("逆序后的数组为:"); Array.Reverse(a); for(i=0;i<n;i++) { Console.Write(a[i]+" "); } Console.ReadKey(); } } }