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]);
}
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+" ");
}
运行结果