Menu
Coddy logo textTech

Finale Ausgabe

Teil des Abschnitts Logik & Ablauf der C-Journey von Coddy. Lektion 24 von 63.

challenge icon

Aufgabe

Einfach

Vervollständige dein Textverarbeitungsprogramm, indem du alle in den vorherigen Lektionen entwickelten Funktionen zu einer einzigen, umfassenden Ausgabe zusammenführst. Dein Programm sollte:

  1. Den Benutzer auffordern, einen kurzen Satz einzugeben, indem es Folgendes ausgibt: Enter a sentence: (ohne Zeilenumbruch am Ende: Verwende printf("Enter a sentence: "), nicht printf("Enter a sentence: \n"))
  2. Ein Zeichenarray namens sentence mit 200 Elementen deklarieren, um die Eingabe zu speichern
  3. scanf mit dem Formatbezeichner %s verwenden, um ein einzelnes Wort vom Benutzer einzulesen
  4. Das ursprüngliche Wort zu Anzeigezwecken in einem separaten Zeichenarray speichern
  5. Die Gesamtanzahl der Zeichen mithilfe von strlen() berechnen
  6. Die Vokale zählen, indem jedes Zeichen durchlaufen und geprüft wird, ob es einem Vokal (a, e, i, o, u) in Klein- oder Großschreibung entspricht
  7. Das Wort mithilfe der Funktion toupper() in einer Schleife in Großbuchstaben umwandeln
  8. Alle Ergebnisse in einem übersichtlichen, geordneten Format anzeigen, wobei jede Information in einer eigenen Zeile steht

Denke daran, den Header <string.h> für String-Funktionen und den Header <ctype.h> für Funktionen zur Zeichenumwandlung einzubinden.

Deine Ausgabe sollte alle Ergebnisse im folgenden exakten Format anzeigen:

Enter a sentence: Original: [word]
Characters: [count]
Vowels: [count]
Uppercase: [WORD]

Wichtig: Auf die Eingabeaufforderung Enter a sentence: darf kein Zeilenumbruch folgen. Das Wort Original: erscheint unmittelbar nach dem Einlesen der Eingabe in derselben Zeile.

Wenn die Eingabe beispielsweise lautet:

Hello

Deine Ausgabe sollte folgendermaßen aussehen:

Enter a sentence: Original: Hello
Characters: 5
Vowels: 2
Uppercase: HELLO

Diese abschließende Herausforderung führt alle Textverarbeitungsfunktionen zusammen, die du im gesamten Projekt entwickelt hast: Eingabeverarbeitung, Zeichenzählung mit strlen(), Vokalzählung mit Schleifen und bedingten Anweisungen sowie die Umwandlung in Großbuchstaben mit toupper(). Das Programm sollte eine übersichtliche, geordnete Zusammenfassung der Ergebnisse der Textanalyse anzeigen.

Probier es selbst

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

int main() {
    char sentence[200];
    
    printf("Enter a sentence: ");
    scanf("%s", sentence);
    
    printf("You entered: %s\n", sentence);
    
    int length = strlen(sentence);
    printf("Character count: %d\n", length);
    printf("Length: %d\n", length);
    
    int vowel_count = 0;
    for (int i = 0; i < length; i++) {
        char c = sentence[i];
        if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
            c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
            vowel_count++;
        }
    }
    printf("Vowel count: %d\n", vowel_count);
    
    printf("Uppercase: ");
    for (int i = 0; i < length; i++) {
        printf("%c", toupper(sentence[i]));
    }
    printf("\n");
    
    return 0;
}

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-C-Compiler