30/09/2018, 21:36

Tại sao i=0 mà không phải i=1 trong vòng lập for trong mảng một chiều?

Em học về mảng nhưng sao ko khai báo i=1 thì a[1]=…trong mảng sẽ dễ hình dung hơn. Mà em thấy trong sách toàn dùng i=0. Em ko hiểu ạ?

Nguyễn Đức Anh viết 23:45 ngày 30/09/2018

Tại phần tử mảng đầu tiên là a[0] chứ không phải a[1]. Người ta đã quy ước thế

Murakami viết 23:43 ngày 30/09/2018

Quy định mảng là đếm từ 0 rồi bạn, nó rõ ràng như là số 0 sẽ đứng trước số 1 vậy.

Nhật Tiến viết 23:46 ngày 30/09/2018

Bởi vì người ta quy ước sẵn rồi bạn :’|

Sơn viết 23:49 ngày 30/09/2018

tại vì biến mảng cũng là con trỏ trỏ đến phần tử đầu tiên của mảng, nên chỉ số 0,1,2,3… là để cộng thêm vào con trỏ đó để tìm địa chỉ và giá trị của phần tử tiếp theo trong mảng, bởi vì trong bộ nhớ mảng là dải địa chỉ liên tục mà

bonus: array[3]= *(array+3)= *(3+array)=3[array]. để tìm giá trị của phần tử thứ 3 thì bạn viết là array[3] hay 3[array] cũng được.

chu đức anh viết 23:52 ngày 30/09/2018

Hãy đếm từ 0 thay vì đếm từ 1. Công việc sẽ dễ dàng hơn.

Bài liên quan
0