Red de conocimiento informático - Computadora portátil - Lenguaje C Para cualquier artículo en inglés, cuente cuántas veces aparece cada palabra y reemplace la palabra especificada.

Lenguaje C Para cualquier artículo en inglés, cuente cuántas veces aparece cada palabra y reemplace la palabra especificada.

Primero obtenga el flujo de archivos fopen (no escribiré los detalles, los libros de contenido relevantes están disponibles en línea)

Defina un tipo de estructura, los miembros incluyen la siguiente referencia: typedefine ?struct?danchi

{

char?dc[100]; //Contenido de Word (si no te importa, también puedes usar un puntero para solicitar dinámicamente el tamaño de la matriz y la aplicación dinámica puede usar malloc)

int?cnt; //Variable de conteo (establecida en 1 cuando aparece la misma palabra por primera vez, y luego el miembro del nodo donde aparece por primera vez se acumulará y el miembro del nuevo nodo se establecerá en -1)

struct?danchi?*next;//puntero de lista vinculada

}DC ;

Después de eso, el espacio se usa como condición (preste atención a los signos de puntuación), y cuando se lee el espacio, los caracteres anteriores forman una cadena. Cree un nuevo nodo para guardar la cadena. contenido. Recorra la lista vinculada y compare el miembro dc[100] para ver si ha aparecido la misma palabra. Recorra la primera palabra idéntica y establezca su miembro cnt y establezca el cnt del nuevo nodo en -1. en la lista enlazada.

Si no hay ningún nodo idéntico, significa que la palabra aparece por primera vez, establezca el cnt del nuevo nodo en 1 e inserte el nodo en la lista vinculada.

Espere hasta que todas las palabras formen una lista vinculada.

Recorra la lista vinculada nuevamente. Siempre que el número de nodos con cnt distinto de -1 sea el número de palabras en el artículo, el valor de cnt distinto de -1 es el número de apariciones de. cada palabra.

Eliminar palabra: simplemente elimine el nodo correspondiente (si elimina el nodo donde aparece la palabra por primera vez, guarde su valor cnt en el nodo donde aparece la misma palabra a continuación).

Reemplazar una palabra: primero, recorra la lista vinculada para confirmar que la nueva palabra no ha aparecido antes.

Luego determine la secuencia del nodo reemplazado y el siguiente. o nodo anterior con la misma palabra. El nodo anterior conserva el valor de cnt 1, el cnt posterior se establece en -1 y la palabra recién ingresada se guarda en este nodo.

Si no aparece, significa que la palabra se escribe por primera vez. Llame a la función de eliminación anterior para eliminar primero el nodo de palabra original y luego cree un nuevo nodo e insértelo en esta posición. .