A ver, no estoy seguro, pero creo q puede ser el motivo.
En C++ puedes declarar variables dentro del for(...), pero no así en C.
Me parece que el error esta ahi: saca del for(...) las declaraciones int i, int j, etc. ponlas antes del bucle, y dentro del for, q se quede solo for(i=0;...).
Espero q te funcione.
Saludos