Дописать числа в бинарный файл

По заданию мне надо после каждого нечётного числа в бинарном файле написать целую часть его половины. Мой список чисел в самом бинарном файле: 15 88 87 37 25 3 6 2 12 999 Сначала читает 15, 88, 87, а потом снова читает 88, 87, 88, 87..... и так до бесконечности. Как с этими метками не возился, ничего не получается. Можете подсказать как надо правильно?

#include <stdio.h>
#include <string.h>
#include <conio.h>
 
int main()
{
    FILE* fb;
    char FileName[7] = "fb.dbl";
    int a;
 
    int err = fopen_s(&fb, FileName, "rb+");
    if (err != 0)
    {
        perror("Error opening the file ");
        _getch();
        return 1;
    }
 
    while (fread(&a, sizeof(a), 1, fb) > 0)
    {
        if (a % 2 != 0)
        {
            int b = a / 2;
            fseek(fb, 0, SEEK_CUR);
            fwrite(&b, sizeof(b), 1, fb);
            //fseek(fb, sizeof(b), SEEK_CUR);
        }
    }
 
    fclose(fb);
    return 0;
} ```

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