Mảng Một Chiều
Có thể bạn quan tâm
- Sign in / Join
sinhvientot.net
Home Lập trình C/C++ Mảng một chiều Facebook Twitter Pinterest WhatsApp Trong lập trình việc sử dụng mảng một chiều là điều thiết yếu, sau đây sinhvientot.net sẽ gởi đến các bạn cách thức để làm chủ mảng một chiều…
Định nghĩa và khai báo mảng 1 chiềuKhái niệm
- Là một kiểu dữ liệu có cấu trúc do người lập trình định nghĩa.
- Biểu diễn một dãy các biến có cùng kiểu. Ví dụ: dãy các số nguyên, dãy các ký tự…
- Kích thước được xác định ngay khi khai báo và không bao giờ thay đổi.
- NNLT C luôn chỉ định một khối nhớ liên tục cho một biến kiểu mảng.
Khai báo biến mảng (tường minh)
- Tường minh
- <N1>, …, <Nn> : số lượng phần tử của mỗi chiều.
- Lưu ý
- Phải xác định <số phần tử> cụ thể (hằng) khi khai báo.
- Bộ nhớ sử dụng = <tổng số phần tử>*sizeof(<kiểu cơ sở>)
- Một dãy liên tục có chỉ số từ 0 đến <tổng số phần tử>-1
Ví dụ:
Khai báo biến mảng (không tường minh)
- Cú pháp
- Không tường minh (thông qua khai báo kiểu)
Số phần tử của mảng
- Phải xác định cụ thể số phần tử ngay lúc khai báo, không được sử dụng biến hoặc hằng thường
- Nên sử dụng chỉ thị tiền xử lý #define để định nghĩa số phần tử mảng
Khởi tạo giá trị cho mảng lúc khai báo
- Gồm các cách sau
- Khởi tạo giá trị cho mọi phần tử của mảng
- Khởi tạo giá trị cho một số phần tử đầu mảng
- Khởi tạo giá trị 0 cho mọi phần tử của mảng
- Tự động xác định số lượng phần tử
Truy xuất đến một phần tử
Gán dữ liệu kiểu mảng
- Không được sử dụng phép gán thông thường mà phải gán trực tiếp giữa các phần tử tương ứng
- Ví dụ: Nhập mảng có n phần tử kiểu nguyên, in ra các phần tử của mảng
- Cách 01: viết trong hàm main
Cách 02: viết trong hàm con, đứng trong hàm main gọi hàm con
//Bước 1: Tạo một Project mới //Bước 2: Khai báo thêm các thư viện cơ bản cho chương trình. #include <conio.h> #include <stdio.h> //Bước 3: Khai báo hằng số cho chương trình. #define MAXSIZE 1000 //Bước 4: Viết các khai báo nguyên mẫu hàm(prototype) cho chương trình như sau: void NhapMang1C_SoNguyen(int a[], int &n); void XuatMang1C_SoNguyen(int a[], int n); //Bước 5: Viết hàm main để thực thi chương trình. void main() { int A[MAXSIZE]; int N; NhapMang1C_SoNguyen(A, N); printf("\nNoi dung cua mang la: "); XuatMang1C_SoNguyen(A, N); _getch(); } //Bước 6: Viết các định nghĩa hàm cần thiết cho chương trình như sau: void NhapMang1C_SoNguyen(int a[], int &n) { printf("Cho biet so phan tu cua mang: "); scanf_s("%d", &n); for(int i=0; i<n; i++) { printf("Gia tri phan tu a[%d]=", i); scanf_s("%d", &a[i]); } } //======================================================================= void XuatMang1C_SoNguyen(int a[], int n) { for(int i=0; i<n; i++) printf("%4d", a[i]); }Những thao tác trên mảng:
Ví dụ:
Tham số mảng của một hàm
Bài tập mẫu Bài 1: Viết chương trình nhập các giá trị cho mảng 1 chiều chứa các số thực, sau đó xuất mảng vừa nhập (Lưu ý: Viết chương trình dạng hàm). Yêu cầu: - Viết 2 hàm con Nhập và Xuất mảng 1 chiều chứa các số thực.
- Gọi thực hiện 2 hàm con trong hàm main.
Bài tập: Cho một mảng 1 chiều chứa các số nguyên. Hãy viết một chương trình tổng hợp dạng hàm với yêu cầu sau:
1 Tạo một mảng 1 chiều chứa các số nguyên. 2 Xuất một mảng 1 chiều chứa các số nguyên. 3 Tính tổng các giá trị mảng. 4 Tính giá trị trung bình các phần tử trong mảng. 5 Tìm giá trị lớn nhất trong mảng. 6 Tính tổng chẵn trong mảng. 7 Tìm số chẵn lớn nhất trong mảng. 8 Tìm số nguyên tố nhỏ nhất trong mảng. 9 Tìm vị trị của giá trị x trong mảng, x nhập từ phím. 10 Tìm vị trí phần tử nhỏ nhất trong mảng. 11 Đếm phần tử dương trong mảng. 12 Đếm số lần phần tử x xuất hiện trong mảng. 13 Đếm số nguyên tố trong mảng. 14 Xuất ra danh sách các phần tử ở vị trí chẵn trong mảng. 15 Tìm “vị trí của giá trị chẵn đầu tiên” trong mảng 1 chiều các số nguyên. Nếu mảng không có giá trị chẵn nào thì trả về -1. 16 Đảo ngược các giá trị mảng. 17 Kiểm tra tính đối xứng của mảng. Nếu mảng không đối xứng thì trả về -1. 18 Viết hàm tìm giá trị phần tử xuất hiện nhiều nhất trong mảng, nếu có nhiều phần tử có số lần xuất hiện bằng nhau thì xuất phần tử đầu tiên. 19 Viết hàm kiểm tra mảng có phải là mảng tăng không. Xem thêm các bài viết sau- Nhập xuất mảng một chiều
- Thêm/Xóa phần tử trên mảng một chiều
- Tìm giá trị lớn nhất/nhỏ nhất trong mảng
RELATED ARTICLESMORE FROM AUTHOR
C/C++ Sự khác nhau giữa Inline function và Macro trong C
C/C++ Trong ngôn ngữ C/C++ có bao nhiêu vùng nhớ (Memory layout)
C/C++ Cấu trúc dữ liệu danh sách nhân viên
C/C++ Tổng quan File trong C
C/C++ Cấu trúc kiểu dữ liệu sinh viên
C/C++ Cấu trúc mô tả một điểm trên tọa độ xOy
LEAVE A REPLY Cancel reply
Log in to leave a comment
This site uses Akismet to reduce spam. Learn how your comment data is processed.
Danh sách các bài học
Các kiểu dữ liệu cơ bản trong ngôn ngữ C/C++
Mr Good - April 16, 2016 0Hướng dẫn Tạo Project Visual C++ trong Visual Studio 2012
April 16, 2016Biến-Hằng-Câu lệnh và biểu thức trong C/C++
April 16, 2016Cấu trúc IF-ELSE
April 16, 2016
Cấu trúc switch – case
April 16, 2016
Vòng lặp For
April 16, 2016
Cấu trúc While, Do-while
April 16, 2016Cách sử dụng hàm trong lập trình
April 16, 2016
Mảng một chiều
April 16, 2016 Load moreBài viết mới nhất
Download Download Cisco Packet Tracer
Windows 10 Hướng dẫn cài đặt webserver trên localhost để chạy wordpress
Hướng dẫn cấu hình IP ILO máy chủ HP DL380 Gen10
CentOS CentOS 8 – Giới thiệu về hệ điều hành Linux (P1)
Load more © Copyright 2016, All Rights Reserved. Donations are always appreciated! MEW: 0x296f1a39d5Ca3cb83C76724eA38af3B90B90109D MORE STORIESGiải thuật Dijkstra
Võ Tình Thương - January 4, 2017 0Tổng quan về Microsoft Word
Mr Good - April 17, 2016 0Từ khóa » Ví Dụ Về Mảng 1 Chiều
-
Bài 11: Kiểu Mảng - Hoc24
-
Bài. Mảng Một Chiều - Tài Liệu Text - 123doc
-
Giải Bài Tập Tin Học 11 - Bài 11: Kiểu Mảng
-
Bài 11: Kiểu Mảng - Tìm đáp án, Giải Bài Tập, để Học Tốt
-
Mảng Một Chiều Là Gì? Cách Khai Báo Và Khởi Tạo Trong C++
-
Mảng 1 Chiều Trong C
-
Lý Thuyết: Kiểu Mảng Trang 53 SGK Tin Học 11: Bài 11
-
Cách Khai Báo Mảng Trong C/C++ - Mobitool
-
Tin Học 11 Bài 11: Kiểu Mảng
-
Cách Khai Báo Mảng Trong C/C++
Công nghệ
Công nghệ
Giải pháp
Download
HTML/CSS
HTML/CSS
ASP.NET Core
Thủ thuật
Excel
PowerPoint
Excel
Công nghệ
Công nghệ
Download
Download