#include <stdio.h>

int main() {
    int arr[3][3] = {{1,2,3}, {4,5,6}, {1,2,3}}; // 待处理的二维数组
    int row = 3; // 行数
    int col = 3; // 列数
    int i, j, k;
    int flag; // 标记是否有相同行

    // 输出原数组
    printf("原数组:\n");
    for (i = 0; i < row; i++) {
        for (j = 0; j < col; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }

    // 删除相同行
    for (i = 0; i < row-1; i++) {
        for (j = i+1; j < row; j++) {
            flag = 1;
            for (k = 0; k < col; k++) {
                if (arr[i][k] != arr[j][k]) {
                    flag = 0;
                    break;
                }
            }
            if (flag == 1) { // 相同行
                // 删除第j行
                for (k = 0; k < col; k++) {
                    arr[j][k] = arr[row-1][k];
                }
                row--;
                j--;
            }
        }
    }

    // 输出处理后的数组
    printf("处理后的数组:\n");
    for (i = 0; i < row; i++) {
        for (j = 0; j < col; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }

    return 0;
}
用c语言写一段代码:删除二维数组中元素完全相同的行

原文地址: https://www.cveoy.top/t/topic/bJL3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录