Announcement
Collapse
No announcement yet.
Cho hỏi đoạn code đơn giản
Collapse
X
-
-
Originally posted by 12520527 View PostGiả sử bạn khai báo 3 biến
Code:int a,b; float c;
Nếu thực hiện phép toán
Code:c = a/b
vì kết quả của phép chia số nguyên với số nguyên là 1 số nguyên nên kết quả 0.5 sẽ làm tròn xuống còn 0 --> c = 0
để có kết quả chính xác thì cần ép kiểu số a hoặc số b (hoặc cả 2) thành số thực
Code:c = (float)a/b
thứ tự ưu tiên luôn là ép kiểu, chia rồi gán.
trong trường hợp của bạn, cần ép kiểu số 1 hoặc (2*i) vì 1 là kiểu nguyên, (2*i) cũng là nguyên nên khi chia ra kết quả cũng là số nguyên :confuse:
chúc bạn học tốt :sure:Hãy cứ sống một cách thật tuyệt vời, rồi những điều tốt đẹp sẽ đến với bạn !!
Comment
-
Originally posted by 12520333 View Postcách này hay em cũng nghĩ tới nhưng em thắc mắc ở chổ a=(float)1/(2*i) nó có khác vs a=float(1)/(2*i) không ạ ??Last edited by 11520537; 11-11-2012, 22:50.Tôi không hối tiếc những gì mình đã làm. Tôi chỉ hối tiếc những gì đã không làm khi có cơ hội!
Comment
-
Originally posted by 12520333 View Postcách này hay em cũng nghĩ tới nhưng em thắc mắc ở chổ a=(float)1/(2*i) nó có khác vs a=float(1)/(2*i) không ạ ??
Originally posted by 12520333 View Postcám ơn bạn, bạn nói rất chi tiết, mà bạn : thương của một số nguyên với một số thực thì trên C là thực hay nguyên ???
Comment
Comment