Code khi chạy không chạy vào lệnh if

Dạ mn ơi em mới tập code
Mn có thể xem giùm em em sai chỗ nào ko ạ
lúc em console ra thì phần if nó ko hiển thị ạ

Lỗi là %d chỉ dành cho giá trị kiểu int, còn bạn muốn in ra giá trị kiểu long thì phải dùng %ld.
Link: https://stackoverflow.com/questions/38561/what-is-the-argument-for-printf-that-formats-a-long

10 Likes

Cảm ơn nhá bạn @trankhoa001 nhìu…Mình làm được rồi

Vậy mình muốn scanf ra chữ thì dùng j ạ

Chú là là hãy post hẳn code lên và nhớ Mark down code nhé :slight_smile: Không ai rảnh đánh lại nguyên đoạn code đâu :slight_smile:

nếu bạn muốn scanf một chuỗi kí tự thì bạn dùng %s, một kí tự thì dùng hàm getchar luôn,

8 Likes

Không nên. Dùng fgets thôi, vì scanf chỉ đọc tới khoảng trắng là dừng. fgets đọc tới khi enter luôn.

4 Likes

Mình dùng fgets ko đk bạn ơi nó ko console ra đk lệnh nó còn ghi lỗi

Bạn phải nêu rõ bạn dùng như thế nào mọi người mới biết lỗi là gì.

Ví dụ fgets được dùng trong chương trình này:

int main()
{
    unsigned int tuoi;
    char ten[30];
    printf("Nhap ten:");
    fgets(ten, sizeof(ten), stdin);
    printf("Nhap tuoi:");
    scanf("%i", &tuoi);
    
    printf("Xin chao %sTuoi cua ban la: %d\n", ten, tuoi);
    if (tuoi < 18)
        printf("\tBan van chua den tuoi truong thanh\n");
    else
        printf("\tBan da truong thanh\n");
    return 0;
}
1 Like

Thanks bạn nha để mình thử ạ

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?