求看看,求元素逆置为什么我这个方法做不出来

img


求看看,c++,一维数组案例,求元素逆置,为什么我这个方法求不出来

你这写的明显是个冒泡排序,跟逆置没有半毛钱关系
改为
for(int i=0,j=4;i<j;i++,j--)

if下面没用括号括起来,而且逆置算法错误。


#include <iostream>
using namespace std;
int main()
{
    int arr[5] = { 11,2,33,4,55 };
    for (int j = 0; j < 5;j++)
    {
        int w = 0;
        for (int i = j + 1; i < 5; i++)
        {
            if (arr[j] <= arr[i])
            {
                w = arr[j];
                arr[j] = arr[i];
                arr[i] = w;
            }
        }
        cout << arr[j] << ' ';
    }
    system("pause");
    return 0;
}

img


修改后代码


#include <iostream>
using namespace std;
int main()
{
    int arr[5] = { 11,2,33,4,55 };
    int i, j;
    for (i = 0, j = 4; i < j; i++, j--)
    {
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }
    for (i = 0; i < 5; i++)
    {
        cout << arr[i] << ' ';
    }
    system("pause");
    return 0;
}

运行结果:

img