30/09/2018, 18:51

Cách hoạt động của for

#include<stdio.h>
int luy_thua(int x, int y);
int main()
{
    int x;
    int y;
    printf("nhap x:");
    scanf("%d",&x);
    printf("nhap y:");
    scanf("%d",&y);
    printf("%d^%d= %d",x,y,luy_thua(x,y));
    return 0;

}
int luy_thua(int x, int y)
{
    int i, luy_thua ;
    luy_thua = 1;
    for (i=1;i<=y;i++)
        luy_thua = i*x;
        return luy_thua;
}

cho em hỏi lênh for rong này nó hoạt động như thế nà ạ … em chưa hiểu

Nguyễn Văn Dũng viết 20:57 ngày 30/09/2018

Bạn nên đọc qua 2 bài này.

Làm sao để có thể hiển thị syntax highlighting bằng markdown? Các bạn phải đánh dấu ``` như ví dụ dưới đây Chú ý, dấu ``` được tạo ra bởi nút nằm bên trái số 1 trên bàn phím, nút này sẽ là ~ khi bấm giữ Shift Ví dụ cho C Nội dung: ``` void main() { } ``` Và đừng quên ``` ở cuối Kết quả void main() { } Ví dụ cho Pascal Nội dung: ``` Program HelloWorld; Begin WriteLn('Hello world!') {no ";" is required after the last statement of a block - adding one adds a "null stateme…
Bổ sung: Trước khi đặt câu hỏi: Tìm kiếm những câu hỏi tương tự đã có sẵn Có rất nhiều người cũng gặp tình trạng như bạn, họ đã hỏi và ở đó cũng có rất nhiều câu trả lời thích hợp. Hãy sử dụng công cụ tìm kiếm để có câu trả lời nhanh hơn mà không phải tạo topic mới. Đọc thêm: Cách tìm kiếm trên Dạy Nhau Học grin
Bùi Phú Hiệp viết 21:00 ngày 30/09/2018

Hàm lũy thừa của bạn hình như cũng bị sai rồi
Trước hết mình nói về vòng for
Đầu tiên vòng for sẽ gán biến i = 1, nếu i<=y sẽ thực hiện đoạn code trong vòng for, ở đây là luy_thua = i*x;
Khi thực hiện xong đoạn code trong vòng for sẽ tăng biến i lên 1 (i++)
Vòng lặp sẽ thực hiện cho đến khi điều kiện i<=y không thỏa

Ở vòng for của bạn để trả về giá trị lũy thừa x^y thì phải là luy_thua = luy_thua*x; thì khi mỗi lần lặp lại vòng for sẽ tăng biến luy_thua lên x lần

Bài liên quan
0