Aufgabe: Länge einer Zeichenkette bestimmen

Schreibe ein Programm, das den Benutzer mit scanf() nach einem Wort fragt und die Länge des eingegebenen Wortes mit strlen() ausgibt.

Musterlösung: Länge einer Zeichenkette bestimmen
#include <stdio.h>
#include <string.h>

int main(void) {
    char wort[50];
    printf("Gib ein Wort ein: ");
    scanf("%49s", wort);
    printf("Das Wort '%s' hat %zu Zeichen.\n", wort, strlen(wort));
    return 0;
}

Aufgabe: Zwei Wörter vergleichen

Vergleiche zwei eingegebene Wörter mit strcmp() und gib aus, ob sie gleich sind oder nicht.

Musterlösung: Zwei Wörter vergleichen
#include <stdio.h>
#include <string.h>

int main(void) {
    char wort1[50], wort2[50];
    printf("Gib das erste Wort ein: ");
    scanf("%49s", wort1);
    printf("Gib das zweite Wort ein: ");
    scanf("%49s", wort2);

    if (strcmp(wort1, wort2) == 0)
        printf("Die Woerter sind gleich.\n");
    else
        printf("Die Woerter sind verschieden.\n");
    return 0;
}

Aufgabe: Namen kopieren

Lege zwei Zeichenketten an. Kopiere mit strcpy() den Inhalt von name1 nach name2 und gib beide aus.

Musterlösung: Namen kopieren
#include <stdio.h>
#include <string.h>

int main(void) {
    char name1[] = "Peter";
    char name2[20];
    strcpy(name2, name1);
    printf("Name1: %s\nName2: %s\n", name1, name2);
    return 0;
}

Aufgabe: Satz zusammenbauen

Verwende strcat(), um aus drei Wörtern einen Satz zu bauen, z. B. „Programmieren macht Spass!“.

Musterlösung: Satz zusammenbauen
#include <stdio.h>
#include <string.h>

int main(void) {
    char satz[50] = "Programmieren";
    strcat(satz, " macht ");
    strcat(satz, " Spass!");
    printf("%s\n", satz);
    return 0;
}

Aufgabe: Zeichen in einem Text suchen

Frage den Benutzer nach einem Text und einem Zeichen. Suche mit strchr() das erste Vorkommen des Zeichens und gib die Position aus.

Musterlösung: Zeichen in einem Text suchen
#include <stdio.h>
#include <string.h>

int main(void) {
    char text[100];
    char zeichen;
    printf("Gib einen Text ein: ");
    scanf(" %99[^\n]", text);
    printf("Welches Zeichen soll gesucht werden? ");
    scanf(" %c", &zeichen);

    char *pos = strchr(text, zeichen);
    if (pos)
        printf("Das Zeichen '%c' steht an Position %ld.\n", zeichen, pos - text);
    else
        printf("Das Zeichen '%c' wurde nicht gefunden.\n", zeichen);
    return 0;
}

Aufgabe: Wort in einem Satz finden

Verwende strstr(), um in einem Satz nach einem bestimmten Wort zu suchen und gib die Position aus.

Musterlösung: Wort in einem Satz finden
#include <stdio.h>
#include <string.h>

int main(void) {
    char satz[] = "Das Programm in C macht Spass.";
    char wort[] = "C";
    char *pos = strstr(satz, wort);

    if (pos)
        printf("Das Wort '%s' wurde gefunden an Position %ld.\n", wort, pos - satz);
    else
        printf("Das Wort '%s' wurde nicht gefunden.\n", wort);
    return 0;
}

Aufgabe: Wörter alphabetisch vergleichen

Frage zwei Wörter ab und gib mit strcmp() aus, welches im Alphabet zuerst steht.

Musterlösung: Wörter alphabetisch vergleichen
#include <stdio.h>
#include <string.h>

int main(void) {
    char wort1[50], wort2[50];
    printf("Gib das erste Wort ein: ");
    scanf("%49s", wort1);
    printf("Gib das zweite Wort ein: ");
    scanf("%49s", wort2);

    int ergebnis = strcmp(wort1, wort2);
    if (ergebnis < 0)
        printf("'%s' steht vor '%s'.\n", wort1, wort2);
    else if (ergebnis > 0)
        printf("'%s' steht nach '%s'.\n", wort1, wort2);
    else
        printf("Beide Woerter sind gleich.\n");
    return 0;
}

Aufgabe: Zeichen zählen bis bestimmtes Zeichen

Zähle, wie viele Zeichen in einem String stehen, bis ein bestimmtes Zeichen (z. B. ein Leerzeichen) erreicht ist.

Musterlösung: Zeichen zählen bis bestimmtes Zeichen
#include <stdio.h>
#include <string.h>

int main(void) {
    char text[] = "C ist cool!";
    char *pos = strchr(text, ' ');
    int anzahl;

    if (pos)
        anzahl = pos - text;
    else
        anzahl = strlen(text);

    printf("Bis zum ersten Leerzeichen stehen %d Zeichen.\n", anzahl);
    return 0;
}
Nach oben scrollen