Bootstrap

字符数组或整形数组去重


int main(int argc, char const *argv[])
{
    int a[10]={}, t;
    // int n=sizeof(a)/sizeof(int);
    printf("pls inout:");
    scanf("%d", &t);
    int n = sizeof(a) / sizeof(int);计算数组的大小
    for (int i = 0; i <t; i++)//遍历输入
    {
        scanf("%d", &a[i]);
    }
    for (int i = 0; i < n; i++)//确定第一层循环
    {
        for (int j = i + 1; j < n ; j++)//第二次循环取决于第一层循环的值,即除去第一层循环的第一个值,依次遍历
        {
            if (a[i] == a[j])//如果第一层喜欢的数值与第二层喜欢的数值相等
            {
                for (int k = j; k < n - 1; k++)//循环遍历交换,依赖第二层循环
                {
                    a[k] = a[k + 1];//用后面的数值去覆盖前面的数值
                }
                n--;//整体长度减一
                j--;//避免出现相等的情况
            }
        }
    }
    for (int i = 0; i < n; i++)//遍历打印数值
    {
        printf("%d\n", a[i]);
    }
    return 0;
}

;