Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C - Rekursion

Rekursion ist der Prozess der Wiederholung von Elementen auf selbstähnliche Weise. Wenn ein Programm Ihnen erlaubt, eine Funktion innerhalb derselben Funktion aufzurufen, wird dies in Programmiersprachen als rekursiver Aufruf der Funktion bezeichnet.

void recursion() {
   recursion(); /* function calls itself */
}

int main() {
   recursion();
}

Die Programmiersprache C unterstützt Rekursion, d. h. eine Funktion, die sich selbst aufruft. Bei der Verwendung von Rekursion müssen Programmierer jedoch darauf achten, eine Beendigungsbedingung für die Funktion zu definieren, da sie sonst in eine Endlosschleife übergeht.

Rekursive Funktionen sind sehr nützlich, um viele mathematische Probleme zu lösen, wie z. B. das Berechnen der Fakultät einer Zahl, das Erzeugen von Fibonacci-Reihen usw.

Zahl Fakultät

Das folgende Beispiel berechnet die Fakultät einer gegebenen Zahl unter Verwendung einer rekursiven Funktion −

Live-Demo
#include <stdio.h>

unsigned long long int factorial(unsigned int i) {

   if(i <= 1) {
      return 1;
   }
   return i * factorial(i - 1);
}

int  main() {
   int i = 12;
   printf("Factorial of %d is %d\n", i, factorial(i));
   return 0;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Factorial of 12 is 479001600

Fibonacci-Reihe

Das folgende Beispiel generiert die Fibonacci-Reihe für eine gegebene Zahl unter Verwendung einer rekursiven Funktion −

Live-Demo
#include <stdio.h>

int fibonacci(int i) {

   if(i == 0) {
      return 0;
   }
	
   if(i == 1) {
      return 1;
   }
   return fibonacci(i-1) + fibonacci(i-2);
}

int  main() {

   int i;
	
   for (i = 0; i < 10; i++) {
      printf("%d\t\n", fibonacci(i));
   }
	
   return 0;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

0	
1	
1	
2	
3	
5	
8	
13	
21	
34

C Sprache

  1. C# Hello World – Ihr erstes C#-Programm
  2. C#-Schlüsselwörter und Bezeichner
  3. C#-Variablen und (primitive) Datentypen
  4. C#-Operatoren
  5. C# Bitwise- und Bit-Shift-Operatoren
  6. C# Grundlegende Ein- und Ausgabe
  7. C#-Ausdrücke, -Anweisungen und -Blöcke (mit Beispielen)
  8. C#-Kommentare
  9. C# break-Anweisung
  10. C#-Continue-Anweisung