Programación en C: recuento de las ocurrencias de valores específicos en un archivo txt externo

Dec 13 2020

Me asignaron la tarea de leer la lista de números de un archivo externo y mostrar estadísticas sobre él. Mi plan inicial era contar cuántas veces ha aparecido un valor específico en el código, pero encontré dos problemas: mi salida del archivo externo era diferente a los valores en el archivo y no puedo contar los números individuales en este código usando el bucle for abajo. Gracias por adelantado.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void) 
{
  FILE *fpointer;
  fpointer = fopen("randice.txt","r");
  char filename[600];
  int v, c1 = 0, c2 = 0, c3 = 0, c4 = 0, c5 = 0, c6 = 0;

  while (!feof(fpointer))
  {
    fgets(filename,600,fpointer);
    puts(filename);
  }

  for(v=0;v<600;v++)
   {
     if (filename[v] == 1)
     c1++;
     if (filename[v] == 2)
     c2++;
     if (filename[v] == 3)
     c3++;
     if (filename[v] == 4)
     c4++;
     if (filename[v] == 5)
     c5++;
     if (filename[v] == 6)
     c6++;
   }
  fclose(fpointer);
  
  return 0;
}

Respuestas

1 ralfhtp Dec 14 2020 at 05:20

Estadísticas de frecuencia de palabras en C:

  • Estadísticas de frecuencia de palabras en C (no C ++)

  • Cuente la recurrencia de palabras en el archivo de texto

Un ejemplo más avanzado está en https://rosettacode.org/wiki/Word_frequency#C