Problema con Ciclo Infinito y Condicionales en C        Intento cargar 1 valor entero a la variable F y de hay si el valor de la linea es 0  pase a la siguiente linea y asi sucesivamente hasta q cambie el valor para poder entrar en los condicionales     
0 ----------------------------------------------------------->Operacion 0 
0 ----------------------------------------------------------->Operacion 0 
1 ----------------------------------------------------------->Operacion 1 
18 04 2011 24 04 2011 
DOBLE 
3  ----------------------------------------------------------->Operacion 3 
A 12345678 Alberto Martinez 
A 13456789 Margarita Hernandez 
N Andreina Martinez 
0 
0   
Asi vendria siendo mas o menos la estructura del archivo     
necesito que al pasar las Operacion 0 las 2 veces en una 3ra vuelta, 
pase a Operacion 1 osea F==1 deberia entrar al condicional y cargar los 2 datos q se encuentran alli.. osea las fechas y DOBLE, ya despues la operacion que seguiria seria la 3 aun no e comenzado esa porq veo q siquiera entra al primer condicional =(   
void Operacion(Usuario us, FILE *operacion) 
{ 
	Basura bs; 
	int F,i; 
	long int Cdd; 
	char P; 
	char A = "A"; 
	char N = "N"; 
	operacion = fopen("Operaciones.in","r"); 
	if (operacion == NULL){ 
	printf("No abrio el Archivo\n"); 
	}else 
	{ 
		fscanf(operacion,"%d",&F); 
	while (feof(operacion)) 
	{ 
	if (F==0) 
		{ 
			ContF[1]++; 
		} 
		else 
		{ 
			if (F==1) 
			{ 
				fscanf(operacion,"%d",&us.CheckIn[1]); 
				printf("%d",us.CheckIn[1]); 
				fscanf(operacion,"%d",&us.CheckIn[2]); 
				fscanf(operacion,"%d",&us.CheckIn[3]); 
				fscanf(operacion,"%d",&us.CheckOut[1]); 
				fscanf(operacion,"%d",&us.CheckOut[2]); 
				fscanf(operacion,"%d",&us.CheckOut[3]); 
				fscanf(operacion,"%[^0-9]s",us.t_hab); 
				fscanf(operacion,"%d",&us.CantP); 
				fscanf(operacion,"%c",&P); 
				us.A++; 
				fscanf(operacion,"%d",&us.Ced); 
				fscanf(operacion,"%[^0-9]s",us.Nom); 
				fscanf(operacion,"%[^0-9]s",us.Apellido);   
				for (i = 0; i < (us.CantP-1); i++) 
				{ 
					fscanf(operacion,"%c",&P); 
					if (P == A) //COmparacion de Caracteres 
					{ 
						us.A++; 
						fscanf(operacion,"%d",&bs.CB); 
						fscanf(operacion,"%[^0-9]s",bs.NombreB); 
						fscanf(operacion,"%[^0-9]s",bs.ApellidoB); 
					} 
					else 
					{ 
						us.N++; 
						fscanf(operacion,"%[^0-9]s",bs.NombreB); 
						fscanf(operacion,"%[^0-9]s",bs.ApellidoB); 
					}   
				}   
			}   
			/*if(F==2) 
			{ 
				fscanf(operacion,"%d",&Cdd); 
				fscanf(operacion,"%d",&us.Hora); 
			}*/   
			if(F==3) 
			{   
			} 
		} 
		} 
	}fclose(operacion);	   
}           |