C Program för att hitta summan av naturliga siffror med rekursion

I det här exemplet lär du dig att hitta summan av naturliga tal med en rekursiv funktion.

För att förstå detta exempel bör du ha kunskap om följande C-programmeringsämnen:

  • C Användardefinierade funktioner
  • C Rekursion

De positiva siffrorna 1, 2, 3 … är kända som naturliga tal. Programmet nedan tar ett positivt heltal från användaren och beräknar summan upp till det angivna numret.

Besök den här sidan för att hitta summan av naturliga tal med en slinga.

Summan av naturliga nummer som använder rekursion

#include int addNumbers(int n); int main() ( int num; printf("Enter a positive integer: "); scanf("%d", &num); printf("Sum = %d", addNumbers(num)); return 0; ) int addNumbers(int n) ( if (n != 0) return n + addNumbers(n - 1); else return n; ) 

Produktion

Ange ett positivt heltal: 20 Sum = 210 

Antag att användaren skrev in 20.

Ursprungligen addNumbers()kallas från main()med 20 godkända som ett argument.

Siffran 20 läggs till i resultatet av addNumbers(19).

I nästa funktionsanrop från addNumbers()till addNumbers()passeras 19 som läggs till resultatet av addNumbers(18). Denna process fortsätter tills n är lika med 0.

När n är lika med 0 finns det inget rekursivt samtal. Detta returnerar slutligen summan av heltal till main()funktionen.

Intressanta artiklar...