我是编程新手,所以如果有人可以详细解释如何进行编程。那会很有帮助。这是我能想到的:
#include <stdio.h>
int remove_duplicates(int array[][2]);
int main(){
int i,j,num;
printf("Enter the number of sets: ");
scanf("%d", &num);
int sets[num][2];
printf("Enter elements in the array: ");
for(i=0;i<num;i++){
for(j=0;j<2;j++){
scanf("%d", &sets[i][j]);
}
}
remove_duplicates(sets);
for(i=0;i<num;i++){
for(j=0;j<2;j++){
printf("%d," ,sets[i][j]);
}
printf("\n");
}
}
int remove_duplicates(int array[][2]){
int i,j,k,n;
for(i=0;i<n;i++){
for(j=0;j<2;j++){
if(array[i][j] == array[i+1][j+1]){
for(k=j;k<n;k++){
array[i][k] == array[i][k+1];
}
n--;
j--;
}
}
}
}
实际上,您不能从数组中删除元素。您可以跟踪将数组移到数组开头的实际非重复元素的数量。
例如,如果需要,您可以用一些值填充“已删除”元素。