Переделать код под ввод массива пользователем
Помогите пожалуйста переделать код что бы массив вводился пользователем(размер массива тоже). Ввод массива должен быть в одну строчку также как и вывод. Если что сам код удаляет одинаковые элементы(когда элементы являются соседями)(он удаляет 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;
}