Danh mục

Bài giảng Kỹ thuật lập trình hệ cơ điện tử: Chương 6 - TS. Đặng Thái Việt

Số trang: 61      Loại file: pptx      Dung lượng: 1,002.93 KB      Lượt xem: 19      Lượt tải: 0    
Hoai.2512

Xem trước 7 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Kỹ thuật lập trình hệ cơ điện tử: Chương 6 - Con trỏ và mảng" Khái niệm ngôn ngữ lập trình C/C++; Khai báo mảng trong C/C++; Khởi tạo mảng trong C/C++; Con trỏ tới một mảng trong C++; Truyền mảng như là các tham số hàm trong C++;... Mời các bạn cùng tham khảo bài giảng!
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình hệ cơ điện tử: Chương 6 - TS. Đặng Thái Việt TRƯỜNGĐẠIHỌCBÁCHKHOAHÀNỘIKỸTHUẬTLẬPTRÌNHHỆCƠĐIỆNTỬProgrammingEngineeringinMechatronics Giảngviên:TS.TS.ĐặngTháiViệt Đơnvị:BộmônCơđiệntử,ViệnCơkhí HàNội,09/2017 1 KỸTHUẬTLẬPTRÌNHHỆCƠĐIỆNTỬ1. Tổngquanvềngônngữlậptrình 7. Cấutrúc2. GiớithiệusơbộngônngữC 8. Vào/ratrongC3. Kiểu,toántửvàbiểuthức 9. CơsởcủaC++4. Dòngđiềukhiển 10. Lớp5. Hàmvàcấutrúcchươngtrình 11. Kếthừavàđahình6. Contrỏvàmảng 12. Luồngvào/ratrongC++ 2 CHƯƠNG6.Contrỏvàmảng6.1Kháiniệmvềmảng6.2Kháiniệmvềcontrỏ 3 Kháiniệmvềmảng1.1Kháiniệm § Ngôn ngữ lập trình C/C++ cung cấp cấu trúc dữ liệu gọi là mảng, được lưu trữ trong một tập hợp các dữ liệu cùng kiểu với độ dài cố định. Một mảng được sử dụng để lưu trữ tập hợp dữ liệu. § Thay vì khai báo biến một cách rời rạc, như biến so0, so1,… và so99, bạn có thể khai báo một mảng các giá trị như so[0], so[1] và … so[99] để biểu diễn các giá trị riêng biệt. Một thành viên cụ thể của mảng có thể được truy cập qua index (chỉ số). § Tất cả mảng đều bao gồm các vị trí nhớ liền kề nhau. Địa chỉ thấp nhất tương ứng với thành viên đầu tiền và địa chỉ cao nhất tương ứng với thành viên cuối cùng của mảng. 4 Kháiniệmvềmảng1.2KhaibáomảngtrongC/C++ § Để khai báo một mảng trong ngôn ngữ C/C++, bạn xác định kiểu của biến và số lượng các phần tử được yêu cầu bởi biến đó như sau: § Đây là mảng một chiều. Kich_co_mang phải là một số nguyên lớn hơn 0 và Kieu phải hợp lệ trong ngôn ngữ C/C++. Ví dụ, khai báo một mảng 10 phần tử gọi là balance với kiểu double, sử dụng câu lệnh sau đây: double balance[10]; 5 Kháiniệmvềmảng1.3KhởitạomảngtrongC/C++ § Bạn có thể khởi tạo mảng trong C/C++ hoặc từng phần tử một hoặc sử dụng một câu lệnh như dưới đây: § Số lượng các giá trị trong dấu ngoặc kép {} không được lớn hơn số lượng phần tử khai báo trong dấu ngoặc vuông []. 6 Kháiniệmvềmảng1.3KhởitạomảngtrongC/C++ § Nếu bạn bỏ sót kích cỡ mảng thì mảng đó đủ lớn để giữ các giá trị được khởi tạo: Bạn sẽ tạo chính xác một chuỗi có giá trị giống hệt chuỗi bên trên bằng cách gán từng phần tử một. Dưới đây là một ví dụ khi gán giá trị cho một phần tử của mảng: § Tất cả các mảng đều có chỉ số (index) đầu tiên bằng 0, đây được gọi là chỉ số cơ bản và phần tử cuối cùng của mảng có chỉ số bằng độ lớn của mảng trừ đi 1. Dưới đây là cách biểu diễn hình họa cho chuỗi khai báo bên trên thông qua chỉ số: 7 Kháiniệmvềmảng1.3TruycậpcácphầntửmảngtrongC/C++ § Một mảng được truy cập bởi cách đánh chỉ số trong tên của mảng. Dưới đây là một cách truy cập một giá trị của mảng: § Câu lệnh trên lấy phần tử thứ 56 của mảng và gán giá trị này cho biến hocphi. 8 KháiniệmvềmảngVídụ 9 Kháiniệmvềmảng1.4MảngđachiềutrongC++ § C++ hỗ trợ các mảng đa chiều. Dưới đây là mẫu chung của một khai báo mảng đa chiều: § Ví dụ: int hocphi[5][10][4]; 10 KháiniệmvềmảngMảnghaichiềutrongC++ § Mẫu đơn giản nhất của mảng đa chiều là mảng hai chiều. Một mảng hai chiều về bản chất là danh sách của các mảng một chiều. Để khai báo một mảng hai chiều integer với kích cỡ x, y, bạn nên viết như sau: § Ở đây, kieu_du_lieu có thể là bất kỳ kiểu dữ liệu có hiệu lực nào và ten_mang sẽ là một định danh C++ có hiệu lực. 11 KháiniệmvềmảngMảnghaichiềutrongC++ § Một mảng hai chiều có thể như là một bảng mà có x hàng và y cột. Một mảng hai chiều a chứa 3 hàng và 4 cột có thể được hiển thị như sau: § Như vậy, mỗi phần tử trong mảng a được định danh bởi một tên phần tử trong kiểu mẫu a[i][j], với a là tên mảng và i, j là các subscript – chỉ số được xác định duy nhất mỗi phần tử trong a. 12 KháiniệmvềmảngKhởitạomảnghaichiềutrongC++ § Các mảng đa chiều có thể được khở ...

Tài liệu được xem nhiều: