Show
Đầu Trang
Đầu Trang
Lời giải và đáp án chính xác nhất cho câu hỏi trắc nghiệm: “Cách viết nào sau đây tham chiếu đúng phần tử thứ i của mảng D”kèm kiến thức tham khảo là tài liệu trắc nghiệm môn Tin học 11 hay và hữu ích do Top lời giảitổng hợp và biên soạn dành cho các bạn học sinh ôn luyện tốt hơn. Mục lục nội dungTrắc nghiệm: Cách viết nào sau đây tham chiếu đúng phần tử thứ i của mảng DKiến thức tham khảo về kiểu mảng1. Kiểu mảng một chiều2. Bài tập về kiểu mảngTrắc nghiệm: Cách viết nào sau đây tham chiếu đúng phần tử thứ i của mảng DA. D[',i',] B. D['i'] C. D[i] D. D(i) Trả lời: Đáp án đúng: C. D[i] Giải thích: - Tham chiếu tới phần tử của mảng một chiều được xác định bởi tên mảng cùng với chỉ số, được viết trong cặp ngoặc [ và ]. - Cú pháp:tên_mảng [chỉ số] Kiến thức tham khảo về kiểu mảng1. Kiểu mảng một chiềuMảng một chiều là dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và mỗi phần tử của nó có một chỉ số. Để mô tả màng một chiều cần xác định kiểu của các phần tử và cách đánh số các phần tử của nó (mỗi phần tử của nó có một chỉ số). Để người lập trình có thể xây dựng và sử dụng kiều mảng một chiều, các ngôn ngữ lập trình có quy tắc cách thức cho phép xác định: - Tên kiểu mảng một chiều;
- Số lượng phần tử của mảng; - Kiểu dữ liệu của phần tử; - Cách khai báo biến; - Cách tham chiếu đến phần tử. Có thể truy cập (hay thao tác) trên mỗi phần tử của mảng, trong việc làm đó mỗi phần tử của mảng được xác định bởi tên của mảng và chỉ số tương ứng của phần tử này. Kiểu mảng là một kiểu dữ liệu có cấu trúc, rất cần thiết và hữu ích trong nhiều chương trình. a. Khai báo Tổng quát, khai báo biến mảng một chiều có dạng: * Cách 1. Khai báo trực tiếp biến mảng một chiều: var < tên biến mảng >: array [ kiểu chỉ số ] of < kiểu phần tử >; * Cách 2. Khai báo gián tiếp biến mảng qua kiểu mảng một chiều: type < tên kiểu mảng > = array [ kiểu chỉ số ] of < kiểu phần tử >; var < tên biến mảng >: < tên kiểu mảng >; Trong đó: - Kiểu chỉ số thường là một đoạn số nguyên liên tục có dạng n1..n2 với n1, n2 là các hằng hoặc biểu thức nguyên xác định chỉ số đầu và chỉ số cuối (n1≤≤n2); - Kiểu phần tử là kiểu của phần tử mảng. Ví dụ 1: Tìm phần tử lớn nhất của dãy số nguyên Input:Số nguyên dương N (N<=250) và dãy N số nguyên dương A1,A2,..,An,mỗi số đều không vượt quá 500. Output:Chỉ số và giá trị của phần từ lớn nhất trong dãy số đã cho (nếu có nhiều phần tử lớn nhất thì chỉ cần đưa ra một trong số chúng. Ví dụ 2: Ví dụ 3: Tìm kiếm nhị phân. Bước 1:Nhập N, các số hạng a1, a2... aN và khóa k. Bước 2:Dau <— 1, Cuoi <-N; Bước 3:Giua <—[ Dau + Cuoi]/2 Bước 4:Nếu Agiữa= k thì thông báo chỉ số Giua rồi kết thúc; Bước 5:Nếu Agiữa> k thì đặt Cuối= Giữa-1 rồi chuyển đến bước 7; Bước 6:Nếu Nếu Agiữa≤ k Dau; Bước 7:Nếu Dau > Cuoi thì thông báo dãy A không có số hạng có giá trị bằng k rồi kết thúc; Bước 8:Ọuay lại bước 3. Từ thuật toán của bài toán, chúng ta rút ra được một số điều cơ bản cần phải lưu ý, đó là: - Mảng đã dược sắp xếp tăng dần. - Trong thuật toán, việc tìm kiếm thực chất là lặp một số lần (chưa xác định được trước) các thao tác sau: chọn số hạng ở "giữa" dãy, so sánh số hạng đó với k, căn cứ vào kết quả so sánh này để hoặc kết luận đã tìm thấy (trường hợp xảy ra bằng) hoặc thu hẹp phạm vi tìm kiếm(trường hợp không bằng). - Khi nào quá trình lặp nói trên dừng lại? Quá trình lặp đó cần dừng lại với một trong hai sự kiện sau xảy ra gồm đã tìm thấy hoặc không gian tìm kiếm đã trở nên bằng rỗng (nghĩa là không còn đoạn nào của dãy cho ta hy vọng chứa phân tử cần tìm). - Phạm vi tìm kiếm trên dãy là một đoạn được xác định bởi các biến nguyên Dau và Cuoi, tương ứng cho biết bắt đầu từ phần tử có chỉ số Dau của dãy cho đến phần tử có chỉ số Cuoi của dãy. Từ đó, ta đưa ra được công thức xác định phân tử ở "giữa" phạm vi tìm kiếm và công thức xác định lại giá trị cho biến Dau hay Cuoi trong mỗi trường hợp thu hẹp phạm vi tìm kiếm. b. Tham chiếu tới phần tử của mảng một chiều - Tham chiếu tới phần tử của mảng một chiều được xác định bởi tên mảng cùng với chỉ số, được viết trong cặp ngoặc [ và ]. - Cú pháp:tên_mảng[chỉ số] Ví dụ 2:Tham chiếu tới nhiệt độ của ngày thứ 20, trong chương trình trên, được viết làNhietdo[20]. 2. Bài tập về kiểu mảngCâu 1:Phát biểu nào dưới đây về kiểu mảng một chiều là phù hợp? A. Là một tập hợp các số nguyên B. Độ dài tối đa của mảng là 255 C. Là một dãy hữu hạn các phần tử cùng kiểu D. Mảng không thể chứa kí tự Câu 2:Để khai báo số phần tử của mảng trong PASCAL, người lập trình cần: A. khai báo một hằng số là số phần tử của mảng B. khai báo chỉ số bắt đầu và kết thúc của mảng C. khai báo chỉ số kết thúc của mảng D. không cần khai báo gì, hệ thống sẽ tự xác định Câu 3:Phát biểu nào dưới đây về chỉ số của mảng là phù hợp nhất? A. Dùng để truy cập đến một phần tử bất kì trong mảng B. Dùng để quản lí kích thước của mảng C. Dùng trong vòng lặp với mảng D. Dùng trong vòng lặp với mảng để quản lí kích thước của mảng Câu 4:Cho khai báo mảng và đoạn chương trình như sau: Var a : array[0..50] of real ; k := 0 ; for i := 1 to 50 do if a[i] > a[k] then k := i ; Đoạn chương trình trên thực hiện công việc gì dưới đây? A. Tìm phần tử nhỏ nhất trong mảng; B. Tìm phần tử lớn nhất trong mảng; C. Tìm chỉ số của phần tử lớn nhất trong mảng D. Tìm chỉ số của phần tử nhỏ nhất trong mảng Câu 5: Cho khai báo mảng như sau:Var a : array[0..10] of integer ; Phương án nào dưới đây chỉ phần tử thứ 10 của mảng? A. a[10]; B. a(10); C. a[9]; D. a(9); |