Palindromprüfung in C

CCBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden wir lernen, ein C-Programm zu schreiben, um zu überprüfen, ob eine Zahl ein Palindrom ist oder nicht. Wir werden dies durch die folgenden Schritte erreichen.

Hinweis: Sie müssen die Datei ~/project/main.c selbst erstellen, um zu üben, wie man Code schreibt und wie man es mit gcc kompiliert und ausführt.

cd ~/project
## main.c erstellen
touch main.c
## main.c kompilieren
gcc main.c -o main
## main ausführen
./main

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/BasicsGroup(["Basics"]) c(("C")) -.-> c/ControlFlowGroup(["Control Flow"]) c(("C")) -.-> c/CompoundTypesGroup(["Compound Types"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/BasicsGroup -.-> c/variables("Variables") c/BasicsGroup -.-> c/operators("Operators") c/ControlFlowGroup -.-> c/if_else("If...Else") c/ControlFlowGroup -.-> c/while_loop("While Loop") c/CompoundTypesGroup -.-> c/strings("Strings") c/UserInteractionGroup -.-> c/user_input("User Input") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/variables -.-> lab-123295{{"Palindromprüfung in C"}} c/operators -.-> lab-123295{{"Palindromprüfung in C"}} c/if_else -.-> lab-123295{{"Palindromprüfung in C"}} c/while_loop -.-> lab-123295{{"Palindromprüfung in C"}} c/strings -.-> lab-123295{{"Palindromprüfung in C"}} c/user_input -.-> lab-123295{{"Palindromprüfung in C"}} c/output -.-> lab-123295{{"Palindromprüfung in C"}} end

Palindrom verstehen

Ein Palindrom ist eine Zahl oder ein String, der von vorne und von hinten gelesen, gleich ist. Beispiel: 121 oder "racecar".

Initialisierung von Variablen

Wir beginnen mit der Initialisierung der erforderlichen Variablen für das Programm. Im gegebenen Programm haben wir vier Variablen verwendet: a, b, c und s. Wir werden diese Variablen verwenden, um die erforderlichen Operationen durchzuführen.

#include<stdio.h>

int main()
{
    int a, b, c, s = 0;
    printf("Geben Sie eine Zahl ein: ");
    scanf("%d", &a);
    c = a;
}

Umkehren der Zahl

Wir kehren die Zahl um, damit sie mit der ursprünglichen Zahl verglichen werden kann, um zu überprüfen, ob es sich um ein Palindrom handelt oder nicht. Wir verwenden eine while-Schleife, um die Zahl umzukehren.

while(a > 0)
{
    b = a % 10; //erhalte die letzte Ziffer
    s = (s * 10) + b; //füge die letzte Ziffer zur umgekehrten Zahl hinzu
    a = a / 10; //entferne die letzte Ziffer von der ursprünglichen Zahl
}

Vergleichen der ursprünglichen Zahl mit der umgekehrten Zahl

Schließlich vergleichen wir die umgekehrte Zahl mit der ursprünglichen Zahl, um zu überprüfen, ob es sich um ein Palindrom handelt oder nicht.

if(s == c)
{
    printf("%d ist ein Palindrom", c);
}
else
{
    printf("%d ist kein Palindrom", c);
}

Vollständiger Code

Hier ist der vollständige Code des Programms:

#include<stdio.h>

int main()
{
    int a, b, c, s = 0;

    printf("Geben Sie eine Zahl ein: ");
    scanf("%d", &a);
    c = a;

    while(a > 0)
    {
        b = a % 10;
        s = (s * 10) + b;
        a = a / 10;
    }

    if(s == c)
    {
        printf("%d ist ein Palindrom", c);
    }
    else
    {
        printf("%d ist kein Palindrom", c);
    }

    return 0;
}

Zusammenfassung

In diesem Lab haben wir gelernt, ein C-Programm zu schreiben, um zu überprüfen, ob eine Zahl ein Palindrom ist oder nicht. Wir haben die Logik hinter der Palindrom-Prüfung gelernt und sie im Programm implementiert. Wir haben jetzt ein besseres Verständnis dieses Konzepts und können es jetzt in komplexeren Programmen implementieren.