Giai thừa là tích của dãy số tự nhiên liên tiếp từ 1 tới n, nhưng sẽ có 1 trường hợp đặc biệt đó là số 0, với 0! kết quả vẫn sẽ là 1.
Ví dụ: 5 != (1*2*3*4*5) = 120
Tính giai thừa trong C bằng vòng lặp for
#include <stdio.h> int main() { int n = 5; //Hoặc biến n bạn có thể cho nhập từ bàn phím nhé //Nếu n = 0 thì ta hiển thị kq 1 và thoát khỏi chương trình if(n == 0){ printf("1"); return 0; } //Nếu không sảy ra if chương trình sẽ chạy xuống các lệnh dưới đây đây int factorial = 1; //Khoi tạo biến với giá trị ban đầu là 1 int i; //Duyệt vòng lặp để tính giai thừa for(i = 1; i<=n; i++){ factorial = factorial*i; //Nhân dồn factorial với i } printf("%d! = %d", n, factorial); //Hiển thị kết quả ra màn hình return 0; }
Hàm tính giai thừa trong C bằng vòng lặp for
#include <stdio.h> int tinhGiaiThua(int n){ if(n == 0) return 1; int factorial = 1; int i; for(i = 1; i<=n; i++){ factorial = factorial*i; } return factorial; } int main() { int n = 5; printf("%d! = %d", n, tinhGiaiThua(n)); }