es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Problema con tener letras mayúsculas para el archivo de texto fscanf.

Ok, he estado trabajando en un código fscanf y estaba atascado en un problema. Entonces, ¿cuál es el método para convertir a mayúsculas? Mi código aquí:

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

int main() {
FILE* archivo_de_entrada = fopen(“archivo1.txt”,”r”);

if (archivo_de_entrada == NULL){
printf(“No se puede abrir el archivo de entrada\n”);
return 1;
}

char linea[1000];
while( fgets(linea, 1000, archivo_de_entrada) != NULL ){
    //tal vez
    int longitud = strlen(linea);
      if (linea[longitud-1] == '\n'){
          linea[longitud-1] = '\0';
      }
    //
    for(int i = 0; linea[i] != '\0'; i++){
        if (linea[i] == '\n'){
            linea[i] = '\0';
        }
    }
     printf("%c\n", toupper(linea*));
}

fclose(archivo_de_entrada);
archivo_de_entrada = NULL;
return 0;
}

Intenté usar toupper pero no funcionó… el archivo de texto que tengo es:

Mañana, y mañana, y mañana,
Se arrastra en este pequeño ritmo de día a día,
Hasta la última sílaba del tiempo grabado;
Y todos nuestros ayeres han iluminado a los tontos
El camino hacia la muerte polvorienta. ¡Fuera, fuera, vela breve!
La vida es solo una sombra que camina, un pobre actor
Que pavonea y se angustia durante su hora en el escenario
Y luego no se escucha más. Es un cuento
Contado por un idiota, lleno de sonido y furia,
Que no significa nada.

Que pude copiar pero no puedo encontrar cómo hacer que se capitalice… ¿Alguien puede mostrar cómo se contaría el total de caracteres de palabras y caracteres alfabéticos? Porque quiero ver cómo funciona… Actualmente estoy conseguir un error.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para convertir el texto a mayúsculas, se puede utilizar la función toupper(). Esta función toma un solo carácter como argumento y devuelve la versión en mayúsculas de ese carácter. Por ejemplo, toupper('a') devolvería 'A'.

    Para contar el número total de palabras, caracteres y caracteres alfabéticos, se puede utilizar la función strlen(). Esta función toma una cadena como argumento y devuelve la longitud de la cadena. Por ejemplo, strlen("Hola") devolvería 5.

    También se puede utilizar la función strcspn() para contar el número de caracteres alfabéticos. Esta función toma dos cadenas como argumentos y devuelve la longitud del segmento inicial de la primera cadena que consiste completamente en caracteres que no están en la segunda cadena. Por ejemplo, strcspn("Hola", "aeiou") devolvería 3.

Comments are closed.