一维数组的声明和赋值
1 //声明数组 2 //string[] nameArr=null; 3 //nameArr = new string[5]; 4 5 int[] scoreArr = new int[5]; 6 7 8 9 //声明和实例化的同时去给元素赋值 10 string[] nameArr ={ "jack", "tom", "lucy" }; 11 nameArr[2] = "LUCY"; 12 //修改第三个元素
冒泡排序
1 #region 重点冒泡排序 2 //外层循环控制比较的次数,比较次数是scoreArr.Length-1 3 for (int i = 0; i < scoreArr.Length-1; i++) 4 { 5 //里面的循环是每次排序时,都是从最下面的元素,将其和前一个元素比较 6 for (int j = scoreArr.Length - 1; j > i; j--) 7 { 8 //如果当前元素比前一个小,就交换位置 9 if (scoreArr[j] < scoreArr[j - 1]) 10 { 11 double temp = scoreArr[j]; 12 scoreArr[j] = scoreArr[j - 1]; 13 scoreArr[j - 1] = temp; 14 } 15 } 16 } 17 #endregion
一维数组的遍历
1)foreach
foreach (int a in arr) { Console.Write(a+"\t"); }
2)for
for (int i = 0; i < c; i++) { Console.Write(scoreArr[i] + "\t"); }
数组的方法
Array.Reverse(arr);//反转元素 Array.Sort(names);//排序 names.CopyTo(names2, 0); //数组的拷贝,0指定目标索引
例:点名
1 namespace Demo006 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 string[] names = { "jack", "tom", "lucy", "lili", "amy" }; 8 Random r = new Random(); 9 10 int len = names.Length; 11 while(true) 12 { 13 Console.WriteLine("按任意键开始点名:............."); 14 Console.ReadKey(true); 15 int index = r.Next(len); 16 //将产生的下标后面的元素往前移动 17 for (int i = index + 1; i < len; i++) 18 { 19 names[i - 1] = names[i]; 20 } 21 22 len--; 23 24 Console.ForegroundColor = ConsoleColor.Red; 25 Console.WriteLine("点到的同学是:{0}",names[index]); 26 27 Console.ResetColor(); 28 29 if (len < 1) 30 break; 31 } 32 Console.ReadKey(); 33 } 34 } 35 }
时间: 2024-11-02 02:40:04