Aquí veremos cómo construir un programa en C para imprimir la primera letra de cada palabra. Dada una string, tenemos que encontrar la primera letra de cada palabra.
Enfoque1:
- Atraviesa la array de caracteres, para el primer carácter, imprímelo.
- Ahora, para cada carácter, compruebe si su carácter anterior es un carácter de espacio en blanco, en caso afirmativo, imprímalo.
Aporte:
Geeks for Geeks
Producción:
G f G
C
// C Program to demonstrate Printing // of the first letter of each word #include <stdio.h> #include <string.h> int main() { char str[] = "GeeksforGeeks, A computer science portal " "for geeks"; int i, j = 0; // Traversing the Character array for (i = 0; i < strlen(str); i++) { // To store first character of // String if it is not a // whitespace. if (i == 0 && str[i] != ' ') { printf("%c ", str[i]); } // To check whether Character // is first character of // word and if yes store it. else if (i > 0 && str[i - 1] == ' ') { printf("%c ", str[i]); } } return 0; }
Producción
G A c s p f g
Enfoque 2: Uso de la función strtok()
La función strtok() se usa para dividir la string en partes según un delimitador, aquí el delimitador es un espacio en blanco.
Sintaxis:
strtok(character array, char *delimiter);
C
// C Program to demonstrate Printing // of the first letter // of each word using strtok() #include <stdio.h> #include <string.h> int main() { char str[] = "GeeksforGeeks, A computer science portal for geeks"; // This will give first word of String. char* ptr = strtok(str, " "); while (ptr != NULL) { // This will print first character of word. printf("%c ", ptr[0]); // To get next word. ptr = strtok(NULL, " "); } }
Producción
G A c s p f g
Publicación traducida automáticamente
Artículo escrito por pushpamkjha14 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA