我试图通过使用for循环来反转由15个数字组成的数组,但是由于某种原因,数组顺序保持不变。
我的代码如下:
int main()
{
int arr[15] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
int i, j, temp;
for (i = 0; i < 15; i++)
{
temp = arr[15 - i - 1];
arr[15 - i - 1] = arr[i];
arr[i] = temp;
}
j = 0;
do {
std::cout << arr[j] << " ";
j++;
} while (j < 15);
}
知道我做错了什么吗?
答案 0 :(得分:5)
是的,一旦i
经过中点,您将再次交换所有元素。
要扭转,您只需要走一半即可;即将i
设置为15/2。