Переделать код под ввод массива пользователем

Помогите пожалуйста переделать код что бы массив вводился пользователем(размер массива тоже). Ввод массива должен быть в одну строчку также как и вывод. Если что сам код удаляет одинаковые элементы(когда элементы являются соседями)(он удаляет 1 элемент, например 112345677899 »»»» 123456789 .

#include <stdio.h>

void print(int a[], unsigned n) {
while (n--) {
    printf("%d ", *a++);
}
printf("\n");
}

unsigned pack(int a[], unsigned n) {
unsigned offs = 0, i;
for (i = 1; i < n; ++i) {
    if (a[i - 1] == a[i]) {
        offs++;
    }
    else {
        a[i - offs] = a[i];
    }
}
return n - offs;
}

int main() {
int a[] = {0, 1, 1, 2, 3, 3, 4, 5, 5, 6, 7, 7, 8, 9, 9};
unsigned n = sizeof(a) / sizeof(*a);

print(a, n);
n = pack(a, n);
print(a, n);

return 0;
} 

Ответы (0 шт):