C#练习- 输入n个数(数字之间空格隔开),找出其中最小的数,将它与最前面的数交换后输出这些数

思路:用一个min变量存储数组第一个值,for循环依次和所有元素比较,记录最小值下标,最后一步进行最小值和数组第一个值交换

        string str = Console.ReadLine();//获取输入的一串数
        string[] arr = str.Split(' ');//将输入的字符串切割成字符串数组
        //把字符串数组转换成整形数组
        int[] arrNum = new int[arr.Length];
        for (int i = 0; i < arr.Length; i++)
        {
            arrNum[i] = Convert.ToInt32(arr[i]);
        }
		//用min记录最小值
        int min = arrNum[0];
        //记录最小值索引
        int minIndex = 0;
        for (int i = 1; i < arrNum.Length; i++)
        {
            if (min>arrNum[i])
            {
                minIndex = i;
                min = arrNum[i];
            }
        }
		//把最小的数与最前面的数交换
        int temp = arrNum[minIndex];
        arrNum[minIndex] = arrNum[0];
        arrNum[0] = temp;
		//输出数组
        foreach (int i in arrNum)
        {
            Console.Write(i+" ");
        }

运行结果
在这里插入图片描述

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页