首先,系统随机生成一个一维数组,并将其打印到控制台。然后询问用户是否要对该数组进行冒泡排序,如果用户选择是,则执行冒泡排序算法并打印排序后的数组。
关键代码:
static void Main(string[] args) { Random rand = new Random(); int[] array = new int[10]; // 假设数组长度为10 // 随机填充数组 for (int i = 0; i < array.Length; i++) { array[i] = rand.Next(0, 100); // 数字范围0-99 } Console.WriteLine("原始数组:"); PrintArray(array); Console.Write("是否要对数组进行冒泡排序?(y/n): "); string response = Console.ReadLine(); if(response.ToLower() == "y") { BubbleSort(array); Console.WriteLine("排序后的数组:"); PrintArray(array); } else { Console.WriteLine("未执行排序。"); } } static void BubbleSort(int[] arr) { int n = arr.Length; bool swapped; for (int i = 0; i < n - 1; i++) { swapped = false; for (int j = 0; j < n - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 交换元素 int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; swapped = true; } } // 如果没有发生交换,说明数组已经有序,提前结束 if (!swapped) break; } } static void PrintArray(int[] arr) { foreach (var item in arr) { Console.Write(item + " "); } Console.WriteLine(); }
评论