用c语言写一段代码:删除二维数组中元素完全相同的行
#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;
}
原文地址: https://www.cveoy.top/t/topic/bJL3 著作权归作者所有。请勿转载和采集!