#include
int main()
{
int a[]={2,2,2,3,3,4,4, 5,6,6,6,6,7,7,8, 9,9,10,10,10},i;
for(i=0;i<20;i++)
{
if (a[i]=a[i+1])
printf("%d ",a[i]);
}
return 0;
}
我觉得新建一个数组比较好
因为你这个数组是有序的
新建一个数组b,num(b现在的下标,初始值为0),如果为空,或者与b[num-1]不相等,就把这个数字加入到b数组里面来
不知道你听明白没
有用记得采纳呐!
供参考:
#include<stdio.h>
int removeDuplicates(int* nums, int numsSize)
{
int i, j;
for (i = 0; i < numsSize - 1;) {
if (nums[i] == nums[i + 1]) {
for (j = i + 1; j < numsSize - 1; j++) {
nums[j] = nums[j + 1];
}
numsSize--;
}
else
i++;
}
return numsSize;
}
int main()
{
int a[]={2,2,2,3,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10},i,n;
n = sizeof(a)/sizeof(a[0]);
n = removeDuplicates(a,n);
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}