Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/07/2011, 12:44
kurama19901
 
Fecha de Ingreso: mayo-2011
Mensajes: 15
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Problema con Ciclo Infinito y Condicionales en C

Código C:
Ver original
  1. typedef char cadena[MAX];
  2. typedef int Fecha[3];
  3.  
  4. Fecha ContF;
  5.  
  6. typedef struct
  7. {
  8.     cadena Nom;
  9.     cadena Apellido;
  10.     long int Ced;
  11.     Fecha CheckIn;
  12.     Fecha CheckOut;
  13.     int Hora;
  14.     cadena t_hab;
  15.     int A;
  16.     int N;
  17.     int Cama_Ad;
  18.     int CantP;
  19.    
  20. }Usuario;
  21.  
  22. typedef struct
  23. {
  24.     long int CB;
  25.     cadena NombreB;
  26.     cadena ApellidoB;
  27. }Basura;
  28. void Operacion(Usuario us, FILE *operacion)
  29. {
  30.     Basura bs;
  31.     int F,i;
  32.     long int Cdd;
  33.     char P;
  34.     char A = "A";
  35.     char N = "N";
  36.     operacion = fopen("Operaciones.in","r");
  37.     if (operacion == NULL){
  38.     printf("No abrio el Archivo\n");
  39.     }else
  40.     {
  41.         fscanf(operacion,"%d",&F);
  42.     while (feof(operacion))
  43.     {
  44.     if (F==0)
  45.         {
  46.             ContF[1]++;
  47.         }
  48.         else
  49.         {
  50.             if (F==1)
  51.             {
  52.                 fscanf(operacion,"%d",&us.CheckIn[1]);
  53.                 printf("%d",us.CheckIn[1]);
  54.                 fscanf(operacion,"%d",&us.CheckIn[2]);
  55.                 fscanf(operacion,"%d",&us.CheckIn[3]);
  56.                 fscanf(operacion,"%d",&us.CheckOut[1]);
  57.                 fscanf(operacion,"%d",&us.CheckOut[2]);
  58.                 fscanf(operacion,"%d",&us.CheckOut[3]);
  59.                 fscanf(operacion,"%[^0-9]s",us.t_hab);
  60.                 fscanf(operacion,"%d",&us.CantP);
  61.                 fscanf(operacion,"%c",&P);
  62.                 us.A++;
  63.                 fscanf(operacion,"%d",&us.Ced);
  64.                 fscanf(operacion,"%[^0-9]s",us.Nom);
  65.                 fscanf(operacion,"%[^0-9]s",us.Apellido);
  66.                
  67.                 for (i = 0; i < (us.CantP-1); i++)
  68.                 {
  69.                     fscanf(operacion,"%c",&P);
  70.                     if (P == A) //COmparacion de Caracteres
  71.                     {
  72.                         us.A++;
  73.                         fscanf(operacion,"%d",&bs.CB);
  74.                         fscanf(operacion,"%[^0-9]s",bs.NombreB);
  75.                         fscanf(operacion,"%[^0-9]s",bs.ApellidoB);
  76.                     }
  77.                     else
  78.                     {
  79.                         us.N++;
  80.                         fscanf(operacion,"%[^0-9]s",bs.NombreB);
  81.                         fscanf(operacion,"%[^0-9]s",bs.ApellidoB);
  82.                     }
  83.  
  84.                 }
  85.                
  86.             }
  87.            
  88.             /*if(F==2)
  89.             {
  90.                 fscanf(operacion,"%d",&Cdd);
  91.                 fscanf(operacion,"%d",&us.Hora);
  92.             }*/
  93.            
  94.             if(F==3)
  95.             {
  96.                
  97.             }
  98.         }
  99.         }
  100.     }fclose(operacion);
  101.                            
  102. }


bueno hay esta la estructura etc pero sigo = juas necesito ayuda con esto urgente X_x