- #include <stdio.h>
- #include <string.h>
- void print(int arr[], int n)
- {
- int i;
- for ( i = 0; i <n; i++) {
- printf("%d ", arr[i]);
- }
- }
- // 反轉數組元素的函數
- void reverse(int arr[], int *out, int n)
- {
- if (n<0) {
- return;
- }
- out[7-n]=arr[n];
- reverse(arr, out, n-1);
- }
- int main(void)
- {
- int arr[] = { 35, 23, 17, 2, 5,11,20,1 };
- int n = sizeof(arr)/sizeof(arr[0]);
- //printf("%d",sizeof(arr));//sizeof-->取得資料型態的大小
- int *dynArr = malloc( n * sizeof(int) );//動態指定陣列大小
- reverse(arr, dynArr, n-1);
- print(dynArr, n);
- free(dynArr);//釋放記憶體
- return 0;
- }
複製代碼 |