91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C語言中數組逆序排列的方法有哪些

小樊
109
2024-08-27 04:46:13
欄目: 編程語言

在C語言中,數組逆序排列可以通過以下幾種方法實現:

  1. 雙指針法: 使用兩個指針,一個指向數組的起始位置,另一個指向數組的末尾位置。然后交換這兩個指針所指向的元素,接著將起始位置的指針向后移動一位,末尾位置的指針向前移動一位,重復這個過程直到兩個指針相遇或者錯過彼此。
#include<stdio.h>

void reverseArray(int arr[], int n) {
    int start = 0;
    int end = n - 1;

    while (start < end) {
        // 交換兩個指針所指向的元素
        int temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;

        // 移動指針
        start++;
        end--;
    }
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);

    reverseArray(arr, n);

    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}
  1. 遞歸法: 遞歸地將數組的前n-1個元素逆序排列,然后將第n個元素與第1個元素交換。
#include<stdio.h>

void reverseArray(int arr[], int start, int end) {
    if (start >= end) {
        return;
    }

    // 交換首尾元素
    int temp = arr[start];
    arr[start] = arr[end];
    arr[end] = temp;

    // 遞歸處理剩余元素
    reverseArray(arr, start + 1, end - 1);
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);

    reverseArray(arr, 0, n - 1);

    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}

以上兩種方法都可以實現數組的逆序排列。你可以根據自己的需求和喜好選擇合適的方法。

0
明水县| 射阳县| 海丰县| 偃师市| 盐亭县| 大方县| 庆城县| 郑州市| 锡林郭勒盟| 铜鼓县| 邯郸市| 喜德县| 徐州市| 海城市| 渝北区| 嵊州市| 腾冲县| 郎溪县| 黄平县| 黄大仙区| 沁阳市| 台东市| 溧阳市| 靖西县| 鄂温| 鹤庆县| 正镶白旗| 松滋市| 巨野县| 崇信县| 交口县| 阿城市| 秦皇岛市| 额尔古纳市| 普兰店市| 团风县| 外汇| 招远市| 祥云县| 金门县| 巨野县|