你这写的明显是个冒泡排序,跟逆置没有半毛钱关系
改为
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;
}
#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;
}
运行结果:
#include<iostream>
using namespace std;
int main(void)
{
int temp = 0;
nt nums[5] = { 1,2,3,4,5};
int start = 0;
int end = sizeof(nums)/sizeof(nums[0]) -1 ;
while (start < end)
{
temp = nums[start];
nums[start] = nums[end];
nums[end] = temp;
end--;
start++;
}
for (int i = 0; i < 5; i++)
{
cout << nums[i];
}
return 0;
}