中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言怎么刪除一維數組相同的數

小億
146
2024-01-12 00:22:19
欄目: 編程語言

要刪除一維數組中相同的數,可以使用雙重循環遍歷數組,比較每個元素是否與其他元素相同,若相同,則將該元素刪除。

以下是一個示例代碼:

#include <stdio.h>

void removeDuplicates(int arr[], int *size) {
    int i, j, k;
    for (i = 0; i < *size; i++) {
        for (j = i + 1; j < *size;) {
            if (arr[j] == arr[i]) {
                // 元素相同,刪除arr[j]
                for (k = j; k < *size - 1; k++) {
                    arr[k] = arr[k + 1];
                }
                (*size)--; // 數組大小減1
            } else {
                j++;
            }
        }
    }
}

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

    printf("原始數組:");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    removeDuplicates(arr, &size);

    printf("刪除相同元素后的數組:");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    return 0;
}

運行結果:

原始數組:1 2 3 2 4 1 5 3 
刪除相同元素后的數組:1 2 3 4 5

在上述代碼中,removeDuplicates 函數用于刪除數組中相同的數。首先使用雙重循環遍歷數組,外層循環控制當前要比較的元素,內層循環遍歷當前元素之后的所有元素。若發現相同的元素,則將后面的元素依次向前移動,數組大小減1。最后,輸出刪除相同元素后的數組。

0
龙胜| 东乡县| 依安县| 祁连县| 垣曲县| 靖江市| 榆社县| 项城市| 江阴市| 依安县| 永仁县| 福建省| 嵩明县| 和静县| 当阳市| 伊宁市| 文登市| 万盛区| 呈贡县| 会理县| 洛浦县| 临沂市| 濉溪县| 平阳县| 杭锦后旗| 南陵县| 长岭县| 宝兴县| 罗定市| 黔江区| 五河县| 景谷| 临西县| 喜德县| 灌云县| 泾阳县| 沙洋县| 苍溪县| 怀远县| 红安县| 井研县|