intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kỹ thuật lập trình: Chương 1 - Trần Minh Thái

Chia sẻ: Bautroibinhyen27 Bautroibinhyen27 | Ngày: | Loại File: PPTX | Số trang:121

52
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Kỹ thuật lập trình - Chương 1: Mảng một chiều" cung cấp cho người học các kiến thức: Khái niệm kiểu dữ liệu mảng một chiều, khai báo, các thao tác nhập/ xuất mảng, kỹ thuật tìm kiếm, liệt kê giá trị trong mảng, kỹ thuật xóa, chèn, chuỗi ký tự và các thao tác xử lý cơ bản.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình: Chương 1 - Trần Minh Thái

  1. Lập trình C Chương 1. Mảng một chiều (6 tiết) Trần Minh Thái Email: minhthai@huflit.edu.vn Website: www.minhthai.edu.vn Cập nhật: 09/11/2016 1
  2. Nội dung 1. Khái niệm kiểu dữ liệu mảng một chiều 2. Khai báo 3. Các thao tác nhập/ xuất mảng 4. Kỹ thuật tìm kiếm, liệt kê giá trị trong mảng 5. Kỹ thuật xóa, chèn 6. Chuỗi ký tự và các thao tác xữ lý cơ bản 2
  3. KHÁI NIỆM VÀ KHAI BÁO 3
  4. Khái niệm • ̉ Mang  được  cấp  phát  bô ̣ nhớ  liên  tuc  ̣ và  bao  gồm  nhiều biến thành phần • Mỗi biến thành phần có cùng KDL và cùng tên Giá trị 0 1 2 3 4 5 6 7 8 9 Vị trí Vị trí được tính từ 0 4
  5. Khai báo < Tên mảng > [< Số phần tử tối đa của mảng>] ; Ví dụ int a[100]; //Khai bao mang so nguyen a toi da 100 phan tu float b[50]; //Khai bao mang so thuc b toi da 50 phan tu Nhằm thuận tiện cho việc viết chương trình, ta nên định nghĩa hằng char str[30]; //Khai bao mang ky tu str toi da 30 ky số MAX ở đầu chương trình – là kích thước tối đa của mảng - như tu sau: #define MAX 100 int main() { int a[MAX], b[MAX]; //Các lệnh return 0; } 5
  6. Khai báo, gán giá trị ban đầu Gán từng phần tử int a[5] = { 3, 6, 8, 1, 12 }; Giá trị 3 6 8 1 12 Vị trí 0 1 2 3 4 Gán toàn bộ phần tử trong mảng có cùng giá trị Giá trịa[8] = { 3 }; int 3 3 3 3 3 3 3 3 Vị trí 0 1 2 3 4 5 6 7 6
  7. Truy xuất giá trị TênMảng [vị trí cần truy xuất] int main() Vị trí 3 { int a[5] = { 3, 6, 8, 11, 12 }; printf("Gia tri mang tai vi tri 3 = ", a[3]); getch(); return 0; } 7
  8. Các thao tác trên mảng 1. Nhập 2. Xuất (liệt kê) 3. Tìm kiếm 4. Đếm 5. Sắp xếp 6. Kiểm tra mảng thỏa điều kiện cho trước 7. Tách/ ghép mảng 8. Chèn / xóa 8
  9. THAO TÁC NHẬP VÀ XUẤT 9
  10. Nhập mảng a[0] a[1] a[2] a[3] a[4] a[5] … a[n- 1] Nhập a[0] Nhập a[1] Nhập a[2]  Nhập a[i], với 0 ≤ i ≤ n­1   … Nhập a[n­1] 10
  11. Ví dụ nhập và xuất mảng số nguyên #define MAX 100 void NhapKichThuoc(int &n) { printf("Nhap vao kich thuoc mang: "); scanf("%d", &n); } void NhapMang(int a[], int n) { for (int i = 0; i < n; i++) { printf("* Nhap vao phan tu tai vi tri %d: ", i); scanf("%d", &a[i]); } 11 }
  12. void XuatMang(int a[], int n) { for(int i=0; i
  13. Phát sinh ngẫu nhiên giá trị nguyên • Sử dụng thư viện hàm và • Dùng hàm srand() trong hàm main() trước khi gọi hàm phát sinh: để khởi tạo bộ giá trị ngẫu nhiên • Dùng hàm rand()%k để phát sinh số ngẫu nhiên: có giá trị từ 0 đến k-1 13
  14. Ví dụ: Chương trình tạo mảng số nguyên có giá trị ngẫu nhiên từ 1 đến MAX #include #include #include #include #pragma warning(disable: 4996); #define MAX 100 void NhapKichThuoc(int &n); void PhatSinh(int a[], int n); void XuatMang(int a[], int n); 14
  15. void NhapKichThuoc(int &n) { printf("Nhap vao kich thuoc mang: "); scanf("%d", &n); } void PhatSinh(int a[], int n) { for (int i = 0; i < n; i++) { a[i] = rand() % MAX + 1; } } void XuatMang(int a[], int n) { for(int i=0; i
  16. int main() { int a[MAX], n; NhapKichThuoc(n); srand((unsigned int)time(NULL)); PhatSinh(a, n); printf("Cac gia tri trong mang a:\n"); XuatMang(a, n); getch(); return 0; } 16
  17. Bài tập Cho mảng một chiều số nguyên a, kích thước n. Hãy viết các hàm: 1. Phát sinh giá trị các phần tử ngẫu nhiên theo thứ tự tăng dần cho a. 2. Phát sinh giá trị các phần tử ngẫu nhiên có giá âm và dương. 17
  18. XUẤT CÓ ĐIỀU KIỆN 18
  19. Liệt kê các phần tử thỏa đk cho trước Mẫu 1: void LietKeXXX( a[], int n) { for (int i = 0; i
  20. Liệt kê các phần tử thỏa đk cho trước Mẫu 2: void LietKeXXX( a[], int n, int x) { for (int i = 0; i
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2