数组的交换问题
有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数,c#,c好像要用到指针,没学,我写了一点点,int[] numbers = { 1, 2, 3, 4, 5, 6 };
Console.WriteLine("输入向后移动的几个数");
int num = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < numbers.Length; i++)
{
}
for (int i = 0; i < numbers.Length; i++)
{
Console.Write(numbers[i] + " ");
}
Console.Read();
还有一个问题,虽然解决了,但是感觉不是很优,附上为题和答案
//输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
int[] numbers = {2, 1, 3, 4, 5, 6, 7, 9, 8};
//int max = numbers[0];
//int min = numbers[8];
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] > numbers[0])
{
int temp = 0;
temp = numbers[0];
numbers[0] = numbers[i];
numbers[i] = temp;
}
if (numbers[i] < numbers[8])
{
int temp2 = 0;
temp2 = numbers[8];
numbers[8] = numbers[i];
numbers[i] = temp2;
}
}
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine(numbers[i]);
}
Console.ReadKey();