nguyên thì ta nhập liệu theo cách thông thường.. Nhưng nếu là mảng các số thực thì ta phải thông qua biến trung gian.... Mảng hai chiều Duyệt các phần tử của mảng.. Con trỏ int *p; tr
Trang 1Chương 1
Kỹ thuật xử lý Mảng và Con trỏ
Trang 21.1 Khái niệm Mảng
liệu được đặt liên tiếp trong bộ nhớ
Trang 31.1 Khái niệm Mảng
int a[10];
tại (ví dụ: a[-1] hoặc a[10]) dẫn tới lỗi thực thi rất nghiêm trọng, được gọi là lỗi ‘vượt ngoài biên’
Trang 6ví dụ 6 là số hoàn chỉnh vì 6 = 1 + 2 + 3 = 1 * 2 * 3
Trang 10}
Trang 111.1 Khái niệm Mảng
Tìm phần tử đầu tiên trong mảng a thõa điều kiện
j = -1, i = 1;
Lặp (trong khi (i<=n) và (j = -1))
Nếu a[i] thõa điều kiện thì
Trang 12if(a[i]<0 && -a[i] %10 ==6)
j = i;
i++;
}return j;
Trang 19nguyên thì ta nhập liệu theo cách thông thường Nhưng nếu là mảng các số thực thì ta phải thông qua biến trung gian.
Trang 201.2 Mảng hai chiều
Duyệt các phần tử của mảng.
//Duyệt từng dòng từ trên xuống dưới.
for(i = 0; i< so_dong; i++)
Trang 21//Duyệt các phần tử trên cột thứ k (0 <=k < so_cot)
for (i = 0; i < so_dong; i++)
{
// Xử lý phần tử a[i][k];
Trang 231.3 Con trỏ
int *p;
trỏ kiểu int, địa chỉ của kiểu dữ liệu số nguyên Dấu * không phải là một phần của biến p, int * có nghĩa là con trỏ kiểu int.
con trỏ> ;
Trang 24Địa chỉ & ô nhớ
Bộ nhớ Địa chỉ ô nhớ
Trang 2910 5
printf(“%d,%d”,a, b);
0xAA0h return 0;
5
Trang 32array & pointer
Trang 34array & pointer
Mảng không phải là một biến (ta không thể thực hiện a = pa và a++)
Trang 37TỔNG KẾT
Phân biệt giữa địa chỉ và ô nhớ
Cách quản lý ô nhớ của con trỏ.
Toán tử địa chỉ (&) và nội dung (*).
Phân biệt sự khác nhau giữa mảng và con trỏ.
Lưu ý một số lỗi khi sử dụng con trỏ.
Trang 39BÀI TẬP
int * p;
int x;
p = &x;
Con trỏ p sẽ lưu giữ giá trị địa chỉ của biến x.
Địa chỉ của biến con trỏ p là gì ?
Làm cách nào để quản lý được địa chỉ của biến con trỏ p ?