30/09/2018, 18:06

Lỗi has stopped working trong bài tập struct phân số

#include <stdio.h>

typedef struct
{
    float tuso;
    float mauso;
}PHANSO;

void Nhap(PHANSO ps[], int &i)
{
    char choice;
    do
    {
        printf("Nhap tu so: ");
        scanf("%f", &ps[i].tuso);
        printf("Nhap mau so: ");
        scanf("%f", &ps[i].mauso);
        i++;
        printf("Ban co muon tiep tuc nhap thi an 'c':");
        scanf("%c", choice);
    }while(choice == 'c' || choice == 'C');
}

void Xuat(PHANSO ps[], int n)
{
    for(int i=0; i<n; i++)
    printf("Phan so ban vua nhap la: %.2f/%.2f
", ps[i].tuso, ps[i].mauso);
}

int main()
{
    PHANSO ps[50];
    int i = 0;
    Nhap(ps, i);
    Xuat(ps, i);
    return 0;
}

mọi người xem hàm nhập của e lỗi gì mà nó hiện has stopped working

Ngo Dinh Quyen viết 20:19 ngày 30/09/2018

Dòng scanf("%c", choice); thiếu toán tử & nhé…

Interns viết 20:13 ngày 30/09/2018

định dạng kiểu ký tự không dùng toán tử & cũng được nhé bạn

Dâng Bùi Tấn viết 20:09 ngày 30/09/2018

dong %c ban thay bang %s nhe

Ngo Dinh Quyen viết 20:19 ngày 30/09/2018

Bạn thử lại đi, chỉ có kiểu chuỗi mới làm được như bạn nói…

Pham Van Hai viết 20:07 ngày 30/09/2018
  • Thứ nhất bạn phải thêm toán tử & trong câu lệnh scanf("%c", choice);
  • Thứ 2 bạn phải loại bỏ ký tự thừa ở câu lệnh scanf trước đó:
    ví dụ:
scanf("%c", &choice);```
Interns viết 20:20 ngày 30/09/2018

ok được rồi cảm ơn m.n

Bài liên quan
0