C Chương trình tìm giai thừa của một số bằng phép đệ quy

Trong ví dụ này, bạn sẽ học cách tìm giai thừa của một số nguyên không âm do người dùng nhập bằng cách sử dụng đệ quy.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình C sau:

  • Chức năng C
  • C Các chức năng do người dùng định nghĩa
  • C Đệ quy

Giai thừa của một số dương n được cho bởi:

factorial of n (n!) = 1 * 2 * 3 * 4 *… * n 

Giai thừa của một số âm không tồn tại. Và giai thừa của 01.

Bạn sẽ học cách tìm giai thừa của một số bằng cách sử dụng đệ quy trong ví dụ này. Truy cập trang này để tìm hiểu cách bạn có thể tìm giai thừa của một số bằng vòng lặp.

Giai thừa của một số sử dụng đệ quy

#include long int multiplyNumbers(int n); int main() ( int n; printf("Enter a positive integer: "); scanf("%d",&n); printf("Factorial of %d = %ld", n, multiplyNumbers(n)); return 0; ) long int multiplyNumbers(int n) ( if (n>=1) return n*multiplyNumbers(n-1); else return 1; ) 

Đầu ra

Nhập một số nguyên dương: 6 Giai thừa của 6 = 720 

Giả sử người dùng đã nhập 6.

Ban đầu, multiplyNumbers()được gọi từ main()với 6 được truyền như một đối số.

Sau đó, 5 được chuyển đến multiplyNumbers()từ cùng một hàm (gọi đệ quy). Trong mỗi lần gọi đệ quy, giá trị của đối số n bị giảm đi 1.

Khi giá trị của n nhỏ hơn 1, không có lệnh gọi đệ quy và giai thừa cuối cùng được trả về cho main()hàm.

thú vị bài viết...