算法思想
#include <stdio.h>
int main()
{
int a[6] = { 1, 3, 4, 1, 8, 4 };
int len = 6;
int distance = 0;
//算法思想:每一个数和它之后的数比较(该数不动),如果重复,找到重复的那位数,那位数之后的数前移
//例如 :1与3、4、1、8、4比较 ;3与4、1、8、4比较
//i不动
for (int i = 0; i < len; i++)
{
for (int j = i + 1; j < len; j++)
{
if (a[i] == a[j])
{
distance = len - 1 - j;
//计算j后面还有几位
//-1为了得出数组元素下标对应的数(1~6 - 1 == 0~5)
for (int k = distance; k > 0; k--)
{
//不断--,将j后的元素前移
//覆盖掉前面的元素
a[j] = a[j + 1];
j++;
}
len--;
//移动结束,长度--
}
}
}
//打印
for (int i = 0; i < 4; i++)
{
printf("%d\t", a[i]);
}
return 0;
}