代码思想:对半交换法
代码如下
#include<iostream>
using namespace std;
#define Max 50 //定义全局变量不需要等号和分号
struct Sqlist {
int a[Max] = {1,2,3,4,5,6,7,8};
int length = 8;
};
void print(Sqlist s) {
if (s.length) {
for (int i = 0; i < s.length; i++)
cout << s.a[i] << " ";
}
cout << endl;
}
bool reverse(Sqlist& s) {
if (s.length == 0)return false;
int i = s.length / 2;
if (i == 0) return true;
int temp = 0;
for (int j = 0; j < i; j++) {
temp = s.a[j];
s.a[j] = s.a[s.length - 1 - j];
s.a[s.length - 1 - j] = temp;
}
return true;
}
int main() {
Sqlist s;
print(s);
reverse(s);
print(s);
}
结果: