01/10/2018, 00:37
Biểu thức toán tử trong C?
Ai giải thích giúp em biểu thức a4 với a5 được không ạ?
int m=3,p=5;
int a1,a2,a3,a4,a5;
printf(“Tim gia tri gan cho cac bien”);
a1 = m<p;
a2 = m == p;
a3 = p%m + p>m;
a4 = m*(p>m ? m:p);
a5 = m*(p<m ? p:p);
printf("
a1 = %d “,a1);
printf(”
a2 = %d “,a2);
printf(”
a3 = %d “,a3);
printf(”
a4 = %d “,a4);
printf(”
a5 = %d ",a5);
Bài liên quan
2 topic này sẽ giúp bạn
Giúp minh giải bài tập C với
Giải thích đoạn mã về toán tử điều kiện
anh có thể giải thích cho em cái toán tử này k: d=a== (b=c);
1 biểu thức toán tử được đọc từ phải sang trái hay trái sang phải?
Bạn cứ vào đây coi là đc
http://en.cppreference.com/w/cpp/language/operator_precedence
Dựa vào đó ta thấy dấu = thì có thứ tự thực hiện từ phải sang trái
-> nó sẽ thực hiện cái a == (b = c) trước
Từ đây ta áp dụng quy tắc hồi mẫu giáo được học là ra. Cái gì trong ngoặc tính trước rồi tính ra ngoài
-> gán b = c
Sau đó đem b so sánh bằng với a (a == b)
Cuối cùng là đem kq vừa so sánh được gán vào d
Lúc mới học thì né mấy cái kiểu code này ra đi, nó gây khó hiểu thôi, khi nào nắm rõ được C/C++ thì hãy dùng theo cách này