#一、 冒泡排序
总比对的轮数等于长度-1 比对的最大下标等于 长度-1-上一轮的总轮数-1 //循环数组 判断相邻两个数之间的大小
string str = Console.ReadLine();//获取控制台输入的字符串,数字都是用空格隔开
string[] strArray = str.Split(" ");//使用空格将字符串分割出来
int[] intArray = new int[strArray.Length];//创建一个整型的数组
for (int i = 0; i < strArray.Length; i++)//将分割出来的数字转成整型类型放到整型数组中
{
int number = Convert.ToInt32(strArray[i]);
intArray[i] = number;
}
for (int i=1;i<intArray.Length-1;i++)
{
//比对两个相邻的数
for(int j=0;j<intArray.Length-i;j++)
{
if (intArray[j] > intArray[j+1])//如果前一个比后一个大那么就交换值
{
int temp = intArray[j];
intArray[j] = intArray[j + 1];
intArray[j + 1] = temp;
}
}
}
Console.WriteLine(string.Join(" ", intArray));
1.
string str = Console.ReadLine();
string[] strArray = str.Split(" ");
int[] intArray = new int[strArray.Length];
for (int i = 0; i < strArray.Length; i++)
{
intArray[i] = Convert.ToInt32(strArray[i]);
}
Array.Sort(intArray);//排好序的数组
//先确定好要插入的下标位置
//先输入一个数
int m = Convert.ToInt32(Console.ReadLine());
//定义一个变量存下标位置
int numIndex = 0;
//定义一个新数组,长度加一
int[] numArray = new int[intArray.Length + 1];
//先确定好要插入的下标位置
for (int i = 0;i < intArray.Length - 1;i++)
{
if (intArray[i] <= m && m <= intArray[i+1])
{
numIndex = i+ 1;
break;
}
}
//循环结束 有两种情况出现就是插入到第一个下标位置前,插入到最后一个下标
if (intArray[intArray.Length-1]<m)
{
numIndex = intArray.Length;
}
//给数组赋值
for (int i = 0; i < numIndex; i++)
{
numArray[i] = intArray[i];
}
numArray[numIndex] = m;
for(int i=numIndex+1;i<numArray.Length;i++)
{
numArray[i] = intArray[i - 1];
}
Console.WriteLine(string.Join(" ", numArray));
2.
string str = Console.ReadLine();
string[] strArray = str.Split(" ");
int[] intArray = new int[strArray.Length];
for (int i = 0; i < strArray.Length; i++)
{
intArray[i] = Convert.ToInt32(strArray[i]);
}
int max = 0;//记录最大连续降温的天数的值
int count=1;//创建一个变量记录每次降温的天数,降一次温加一
//循环遍历气温数组
for(int i=0;i<intArray.Length-1;i++)
{
if (intArray[i] > intArray[i+1])
{
count ++;
}
else
{
if(count>max)
{
max = count;
}
count = 1;
}
}
Console.WriteLine("气温连续升高的最高天数{0}", max);