Hay que poner un poco, mas, de esfuerzo:
while ((!feof(f_bch)) && (i!=hipotesis.longatributo) && c
(!='\n'))
while ((!feof(f_bch)) && (i!=hipotesis.longatributo) &&
(c!='\n'))
Lo mismo:
while (!feof(f_bch) && (i!=hipotesis.longconcepto) && c
(!='\n'))
while (!feof(f_bch) && (i!=hipotesis.longconcepto) &&
(c!='\n'))
Supongo que habras hecho copy/paste
while (!feof(f_bch) && (i!=hipotesis.longvalor) && c
(!='\n'))
while (!feof(f_bch) && (i!=hipotesis.longvalor) &&
(c!='\n'))
Esos son los errores que tengo, no se que IDE usas pero con Visual Studio te lleva a la linea del error y lo hubieras visto en 30'', ademas de la llamada a formato_inicio_bc que obviamente no tengo. Ojo con probar que no siempre devuelve un valor en todos los casos y mas ojo con digitos_regla que lo usas sin haberlo inicializado (ambos warnings de VC++).