Динамический массив на си

Пытаюсь вывести новый массив в этом задании, но не получается(

Вот задание: Размер массива и его элементы вводить с клавиатуры. Память выделять динамически. Вставить после каждого пятого элемента линейного массива значение, равное сумме трех предшествующих элементов. Количество элементов в массиве после вставки должно увеличиться.

Вот сам код:

#include <stdio.h>
#include <stdlib.h>

 int main ()
{
     int* a;
     int i, N, sum, k;
    sum = 0;
    printf("введите количество элементов массива\n");
    scanf("%d", &N);

    a = malloc((N + N / 5) * sizeof(int));

    printf("введите  элементы массива\n");
    for (i = 0; i < N; i++)
    {
        scanf("%d", a + i);
     }

    for (i = 0; i < N; i++)
    {   
        k = 0;
        if (i = 5)
        {
            sum = *(a + 4) + *(a + 3) + *(a + 2);
            *(a + 5) = sum;
            *(a + 6) = 0;
       }
       
        
    }
    
    printf ("Результат:\n");
    for (i = 0; i < (N + N/5); i++)
    {
      
         printf("%d", a[i] );
    }


    free(a);
    return 0;
}

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