Danh mục

Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 11: Mảng (GV. Nguyễn Nhật Nam)

Số trang: 60      Loại file: pdf      Dung lượng: 292.27 KB      Lượt xem: 12      Lượt tải: 0    
Hoai.2512

Phí tải xuống: 27,000 VND Tải xuống file đầy đủ (60 trang) 0
Xem trước 6 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 11: Mảng (GV. Nguyễn Nhật Nam). Bài giảng có nội dung trình bày về khái niệm; khai báo mảng; khởi động trị của mảng; mảng là đối số của hàm mảng là biến toàn cục; các ứng dụng;... Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 11: Mảng (GV. Nguyễn Nhật Nam) CHÖÔNG 11 MAÛNG CHÖÔNG 11 MAÛNG11.1 Khaùi nieäm11.2 Khai baùo maûng11.3 Khôûi ñoäng trò cuûa maûng11.4 Maûng laø ñoái soá cuûa haøm maûng laø bieán toaøn cuïc11.5 Caùc öùng duïngBaøi taäp cuoái chöông CHÖÔNG 11 MAÛNG11.1 KHAÙI NIEÄMMaûng laø moät bieán caáu truùc trong ñoù coù nhieàu phaàn töû cuøngkieåu, moãi phaàn töû laø moät bieán thaønh phaàn cuûa maûng. Moãibieán thaønh phaàn naøy laø moät bieán bình thöôøng vaø coù cöôùc soá(subscript) ñeå phaân bieät giöõa phaàn töû naøy vaø phaàn töû kia.Nhö vaäy, ñeå truy xuaát moät phaàn töû cuûa maûng, ta caàn bieátñöôïc cöôùc soá cuûa noù.Trong boä nhôù, caùc phaàn töû cuûa maûng ñöôïc caáp phaùt oâ nhôù coùñòa chæ lieân tieáp nhau. CHÖÔNG 11 MAÛNG11.1 KHAÙI NIEÄMC cuõng cho pheùp laäp trình vieân khai baùo vaø laøm vieäc treânmaûng moät chieàu (singledimensional array) vaø maûng nhieàuchieàu (multidimensional array). Soá phaàn töû treân moät chieàuñöôïc goïi laø kích thöôùc cuûa chieàu ñoù. CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàuCuù phaùp khai baùo maûng moät chieàu nhö sau: kieåu teân_maûng [kích_thöôùc];Vôùi kích_thöôùc laø moät haèng soá nguyeân cuï theå, cho bieát soáphaàn töû trong chieàu ñang xeùt.Trong C, cöôùc soá caùc phaàn töû cuûa maûng luoân ñi töø 0 trôû ñi,neân maûng moät chieàu coù n phaàn töû thì cöôùc soá caùc phaàn töûcuûa maûng laø 0,..., n-1. CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàuVí dụ: Cho khai báo sau: int a[10], x; Như vậy mảng a có 10 phầntử int, các phần tử đó là a[0],a[1], …, a[9]. Các phần tử nàyđược cấp phát vị trí trong bộnhớ như hình 12.1 sau. CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàuLệnh a[5] = a[3] + 1;có mã LC-3 như sau: ADD R0, R5, #-9 ; R0 = &a[0]: địa chỉ của a[0] LDR R1, R0, #3 ; R1 = a[3] ADD R1, R1, #1 ; tăng 1 STR R1, R0, #5 ; a[5] = R1, tức a[5] = a[3] + 1. CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàuLệnh a[5] = 7;có mã LC-3 như sau: AND R0, R0, #0 ADD R0, R0, #7 ; R0 = 7 ADD R1, R5, #-9 ; R1 = &a[0]: địa chỉ của phần tửa[0] STR R0, R1, #5 ; a[5] = R0 CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàu Còn lệnh a[x+1] = a[x] + 2;với x là biến đang chứa trị là chỉ số nào đó cần làm việc, cómã LC-3 như sau: LDR R0, R5, #-10 ; R0 = x ADD R1, R5, #-9 ; R1 = &a[0] ADD R1, R0, R1 ; R1 = &a[x] LDR R2, R1, #0 ; R2 = a[x] ADD R2, R2, #2 ; cộng thêm 2 CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàu LDR R0, R5, #-10 ; R0 = x ADD R0, R0, #1 ; R0 = x+1 ADD R1, R5, #-9 ; R1 = &a[0] ADD R1, R0, R1 ; R1 = &a[x+1] STR R2, R1, #0 ; a[x+1] = R2 CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG1- Maûng moät chieàuVí duï :Vieát chöông trình nhaäp moät daõy caùc soá nguyeân, tìm soá lôùnnhaát trong daõy soá ñoù.#include #include main(){ int i, n, max, vtmax; int a[100]; clrscr(); CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG printf (Chuong trinh thu mang ); printf (Moi ban nhap so phan tu cua mang: ); scanf (%d, &n); printf (Moi nhap cac phan tu cua mang:); for (i = 0; i < n; i++) scanf (%d, &a[i]); max = a[0]; vtmax = 0; for (i = 1; i < n; i++) if (max < a[i]) { max = a[i]; vtmax = i; } printf (Phan tu %d co tri lon nhat la %d , vtmax, max); getch()} CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG2- Maûng nhieàu chieàuCuù phaùp khai baùo maûng nhieàu chieàu nhö sau:kieåu teân_maûng [kích_thöôùc_chieàu1][kích_thöôùc_chieàu2] [...];Khi dòch C baùo loãiArray size too large ? CHÖÔNG 11 MAÛNG11.2 KHAI BAÙO MAÛNG2- Maûng nhieàu chieàuVí duï: Khai baùo maûng hai chieàu aint a[4][3];Nhö vaäy maûng a coù 4x3 phaàn töû int, caùc phaàn töû ñoù laø ...

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