Đệ quy trong C
Đệ quy là quá trình lặp đi lặp lại một thành phần theo cùng một cách. Dưới đây là một ví dụ minh họa tổng quát:
void tenhamdequi() { tenhamdequi(); /* goi chinh no */ } int main() { tenhamdequi(); }
Ngôn ngữ lập trình C hỗ trợ đệ quy, ví dụ, một hàm có thể gọi đến chính nó. Nhưng khi bạn sử dụng hàm đệ quy, lập trình viên cần phải cẩn thận định nghĩa điều kiện thoát khỏi hàm, phòng khi gặp phải vòng lặp vô hạn.
Hàm lặp đệ quy rất hữu dụng để giải quyết các vấn đề trong toán học như tính toán giai thừa, tạo dãy Fibonacci, …
Tính toán giai thừa trong C
Dưới đây là một ví dụ, có thể tính toán giai thừa của một số cho trước sử dụng hàm đệ quy:
#include <stdio.h> int tinhgiaithua(unsigned int i) { if(i <= 1) { return 1; } return i * tinhgiaithua(i - 1); } int main() { int i = 10; printf("Gia tri giai thua cua %d la %d\n", i, tinhgiaithua(i)); printf("\n===========================\n"); printf("QTM chuc cac ban hoc tot! \n"); return 0; }
Biên dịch và thực thi chương trình C trên để xem kết quả:
Dãy Fibonacci trong C
Dưới đây là một ví dụ khác, tạo ra dãy Fabonacci cho một số cho trước sử dụng hàm đệ quy:
#include <stdio.h> int day_fibonaci(int i) { if(i == 0) { return 0; } if(i == 1) { return 1; } return day_fibonaci(i-1) + day_fibonaci(i-2); } int main() { int i; for (i = 0; i < 10; i++) { printf("%d\t%n", day_fibonaci(i)); } printf("\n===========================\n"); printf("QTM chuc cac ban hoc tot! \n"); return 0; }
Biên dịch và thực thi chương trình C trên để xem kết quả:
Theo Tutorialspoint
Bài trước: Xử lý lỗi trong C
Bài tiếp: Tham số biến trong C
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
Cũ vẫn chất
-

6 cách dễ nhất để thêm nhạc vào video trên máy tính
2 ngày -

Sửa lỗi Full Disk 100% trên Windows với 14 thủ thuật sau
2 ngày -

Tra cứu điểm VnEdu 2026 trên điện thoại, máy tính như nào?
2 ngày -

Code Thiếu Nữ Aline Chạy Đi mới nhất
2 ngày -

Cách đổi tiếng Việt LOL VNG, đổi tiếng Việt LMHT VNG
2 ngày 14 -

Code Võ Hồn Đại Lục mới nhất, cập nhật liên tục 27/02/2026
2 ngày -

Một vạn bằng bao nhiêu?
2 ngày 4 -

Hướng dẫn đổi code Free Fire và code mới nhất tháng 11/2025
2 ngày 100+ -

Chuột lang nước: Loài chuột khổng lồ nặng tới 68kg, ung dung giữa đàn cá sấu nhờ khả năng đặc biệt
2 ngày -

Arc, một trong những lựa chọn thay thế Chrome tốt nhất đã ngừng phát triển: Nên dùng gì thay thế?
2 ngày
Học IT
Microsoft Word 2013
Microsoft Word 2007
Microsoft Excel 2019
Microsoft Excel 2016
Microsoft PowerPoint 2019
Google Sheets
Lập trình Scratch
Bootstrap
Prompt
Ô tô, Xe máy