將n個數按輸入時順序的逆序排列,用函數實現
解題思路: 定義兩個指針,一個指向數組頭部,一個指向數組尾部,頭部每次+1,尾部每次-1;則在頭部小於尾部的情況下進行數據交換即可。
答案:
#include<stdio.h>
#include<math.h>
void reorder(int *arry, int n)
{
int *start = arry;
int *end = arry + n - 1;
for (; start < end; start++, end--) {
int tmp = *start;
*start = *end;
*end = tmp;
}
return;
}
int main()
{
int arry[10];
printf("Please enter ten numbers:");
for (int i = 0; i < 10; i++) {
scanf_s("%d", &arry[i]);
}
reorder(arry, 10);
printf("\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arry[i]);
}
printf("\n");
system("pause");
return 0;
}