Bài giảng Ngôn ngữ lập trình C: Mảng và con trỏ - Ninh Thị Thanh Tâm
Số trang: 77
Loại file: pdf
Dung lượng: 557.61 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 8 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nội dung chính trong chương này gồm có: Giới thiệu kiểu dữ liệu mảng, khai báo một mảng, truy cập đến các thành phần của mảng, mảng nhiều chiều, giới thiệu khái niệm con trỏ, cách sử dụng con trỏ trong lập trình,... 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 Ngôn ngữ lập trình C: Mảng và con trỏ - Ninh Thị Thanh TâmNGÔN NGỮ LẬP TRÌNH C Mảng và con trỏ Ninh Thị Thanh TâmKhoa CNTT – HV Quản lý Giáo dụcMục đích & Nội dung Giới thiệu kiểu dữ liệu mảng Biết cách sử dụng mảng (lưu, sắp xếp, tìm kiếm) Khai báo một mảng, truy cập đến các thành phần của mảng Mảng nhiều chiều Giới thiệu khái niệm con trỏ Biết cách sử dụng con trỏ trong lập trình Quan hệ tương hỗ giữa con trỏ, mảng và xâu ký tự Mảng các con trỏ, mảng các xâuMảng Khái niệm: Là một dãy liên tiếp các phần tử cùng kiểu trong bộ nhớ Kích thước: Làsố các phần tử trong mảng Phải được khai báo tường minh Số chiều: Một chiều, hai chiều,… C không giới hạn số chiềuMảng một chiều Khai báo mảng Truy cập vào các phần tử của mảng Nhập dữ liệu cho biến mảngKhai báo mảng Cú pháp: [size]; Ý nghĩa type là kiểu dữ liệu của các phần tử trong mảng name là tên của mảng size là số thành phần trong mảng (hằng số) Ví dụ: int a[7]; char ch[20];Truy cập các phần tử mảng Cú pháp: [index] Ví dụ: a[0], ch[10] Chỉ số: Được đánh số từ 0 Có thể là hằng, biến, biểu thức Chỉ số có thể nhận giá trị nguyên hoặc thực Mỗi phần tử của mảng được xem như một biến Ví dụ: a[2] = a[1]+1;Nhập dữ liệu cho biến mảng Trực tiếp: Sử dụng hàm nhập scanf() để nhập giá trị cho phần tử cần nhập Ví dụ: scanf(“%d”,&a[i]); Gián tiếp: Sử dụng một biến trung gian có cùng kiểu với kiểu các phần tử mảng Nhập giá trị cho biến trung gian Gán giá trị của biến cho phần tử cần nhập giá trị Ví dụ: scanf(“%d”,&temp); a[i] = temp;Ví dụ/*arr1.c*//*CT nhap va in day so*/#include #include void main(){ int n, i; int arr[100]; do { printf(Nhap so phan tu n=); scanf(%d,&n); } while (n100); for (i=0; iKết quảMảng hai chiều Khai báo mảng Truy cập vào các phần tử của mảng Nhập dữ liệu cho biến mảngKhai báo mảng Cú pháp: [size1] [size2]; Ý nghĩa type là kiểu dữ liệu của các phần tử trong mảng name là tên của mảng size1, size2 là số thành phần mỗi chiều (hằng số) Ví dụ: int matrix[5][10]; float b[20][20];Truy cập các phần tử mảng Cú pháp: [row][column] Ví dụ: matrix[0][0], b[5][10] Mỗi phần tử của mảng được xem như một biến Ví dụ: matrix[0][0] = matrix[0][0]+10;Nhập dữ liệu cho biến mảng Trực tiếp: Sử dụng hàm nhập scanf() để nhập giá trị cho phần tử cần nhập Ví dụ: scanf(“%d”,&matrix[i][j]); Gián tiếp: Sử dụng một biến trung gian có cùng kiểu với kiểu các phần tử mảng Nhập giá trị cho biến trung gian Gán giá trị của biến cho phần tử cần nhập giá trị Ví dụ: scanf(“%d”,&temp); b[i][j] = temp;Ví dụ/*matrix2.c*/#include #include void main(){ float matrix[3][4]; int i,j; clrscr(); for (i=0; iKết quảXâu kí tự Khai báo xâu kí tự Vào ra với xâu kí tự Sử dụng printf() và scanf() Sử dụng puts() và gets() Hàm thao tác trên xâuKhai báo xâu kí tự Cú pháp: char [size]; Ví dụ: char str[10]; Ý nghĩa: name là tên của xâu kí tự size là kích thước thực của xâu kí tự + 1 So sánh với mảng kí tự Giống: khai báo Khác: trong xâu kí tự có kí tự kết thúc (NULL hay ‘ ’)str[0] ‘a’ Một biến xâu kí tự muốnstr[1] ‘b’ có chiều dài n phải được khai báo như mảng kí tựstr[2] ‘c’ có n+1 phần tửstr[3] ‘d’ ‘ ’ là kí tự đánh dấu kếtstr[4] ‘e’ thúc xâustr[5] ‘f’ So sánh ‘A’ và “A” ‘A’là kí tự A được mã hóastr[6] ‘g’ bằng 1 bytestr[7] ‘h’ “A” là xâu kí tự chứa kí tự A và kí tự ‘ ’, được mãstr[8] ‘ ’ hóa bằng 2 bytestr[9]Vào ra với xâu kí tự (1) Sử dụng hàm print() printf(“%s”,); Ví dụ: printf(“%s”,str); Hàm scanf() scanf(“%s”,); Ví dụ: scanf(“%s”,str); Sử dụng chỉ thị fflush(stdin) nếu đi sau câu lệnh nhập khácVí dụ/*scanf4.c*/#include #include void main(){ int n; double d; char c; char str[20]; clrscr(); printf(Nhap gia tri cho cac bien ); scanf(%d%lf,&n,&d); fflush(stdin); scanf(%c,&c); scanf(%s,str); printf(So int %d ,n); printf(So double %lf ,d); printf(Ki tu %c ,c); printf(Xau ki tu %s ,str); getch();} ...
Nội dung trích xuất từ tài liệu:
Bài giảng Ngôn ngữ lập trình C: Mảng và con trỏ - Ninh Thị Thanh TâmNGÔN NGỮ LẬP TRÌNH C Mảng và con trỏ Ninh Thị Thanh TâmKhoa CNTT – HV Quản lý Giáo dụcMục đích & Nội dung Giới thiệu kiểu dữ liệu mảng Biết cách sử dụng mảng (lưu, sắp xếp, tìm kiếm) Khai báo một mảng, truy cập đến các thành phần của mảng Mảng nhiều chiều Giới thiệu khái niệm con trỏ Biết cách sử dụng con trỏ trong lập trình Quan hệ tương hỗ giữa con trỏ, mảng và xâu ký tự Mảng các con trỏ, mảng các xâuMảng Khái niệm: Là một dãy liên tiếp các phần tử cùng kiểu trong bộ nhớ Kích thước: Làsố các phần tử trong mảng Phải được khai báo tường minh Số chiều: Một chiều, hai chiều,… C không giới hạn số chiềuMảng một chiều Khai báo mảng Truy cập vào các phần tử của mảng Nhập dữ liệu cho biến mảngKhai báo mảng Cú pháp: [size]; Ý nghĩa type là kiểu dữ liệu của các phần tử trong mảng name là tên của mảng size là số thành phần trong mảng (hằng số) Ví dụ: int a[7]; char ch[20];Truy cập các phần tử mảng Cú pháp: [index] Ví dụ: a[0], ch[10] Chỉ số: Được đánh số từ 0 Có thể là hằng, biến, biểu thức Chỉ số có thể nhận giá trị nguyên hoặc thực Mỗi phần tử của mảng được xem như một biến Ví dụ: a[2] = a[1]+1;Nhập dữ liệu cho biến mảng Trực tiếp: Sử dụng hàm nhập scanf() để nhập giá trị cho phần tử cần nhập Ví dụ: scanf(“%d”,&a[i]); Gián tiếp: Sử dụng một biến trung gian có cùng kiểu với kiểu các phần tử mảng Nhập giá trị cho biến trung gian Gán giá trị của biến cho phần tử cần nhập giá trị Ví dụ: scanf(“%d”,&temp); a[i] = temp;Ví dụ/*arr1.c*//*CT nhap va in day so*/#include #include void main(){ int n, i; int arr[100]; do { printf(Nhap so phan tu n=); scanf(%d,&n); } while (n100); for (i=0; iKết quảMảng hai chiều Khai báo mảng Truy cập vào các phần tử của mảng Nhập dữ liệu cho biến mảngKhai báo mảng Cú pháp: [size1] [size2]; Ý nghĩa type là kiểu dữ liệu của các phần tử trong mảng name là tên của mảng size1, size2 là số thành phần mỗi chiều (hằng số) Ví dụ: int matrix[5][10]; float b[20][20];Truy cập các phần tử mảng Cú pháp: [row][column] Ví dụ: matrix[0][0], b[5][10] Mỗi phần tử của mảng được xem như một biến Ví dụ: matrix[0][0] = matrix[0][0]+10;Nhập dữ liệu cho biến mảng Trực tiếp: Sử dụng hàm nhập scanf() để nhập giá trị cho phần tử cần nhập Ví dụ: scanf(“%d”,&matrix[i][j]); Gián tiếp: Sử dụng một biến trung gian có cùng kiểu với kiểu các phần tử mảng Nhập giá trị cho biến trung gian Gán giá trị của biến cho phần tử cần nhập giá trị Ví dụ: scanf(“%d”,&temp); b[i][j] = temp;Ví dụ/*matrix2.c*/#include #include void main(){ float matrix[3][4]; int i,j; clrscr(); for (i=0; iKết quảXâu kí tự Khai báo xâu kí tự Vào ra với xâu kí tự Sử dụng printf() và scanf() Sử dụng puts() và gets() Hàm thao tác trên xâuKhai báo xâu kí tự Cú pháp: char [size]; Ví dụ: char str[10]; Ý nghĩa: name là tên của xâu kí tự size là kích thước thực của xâu kí tự + 1 So sánh với mảng kí tự Giống: khai báo Khác: trong xâu kí tự có kí tự kết thúc (NULL hay ‘ ’)str[0] ‘a’ Một biến xâu kí tự muốnstr[1] ‘b’ có chiều dài n phải được khai báo như mảng kí tựstr[2] ‘c’ có n+1 phần tửstr[3] ‘d’ ‘ ’ là kí tự đánh dấu kếtstr[4] ‘e’ thúc xâustr[5] ‘f’ So sánh ‘A’ và “A” ‘A’là kí tự A được mã hóastr[6] ‘g’ bằng 1 bytestr[7] ‘h’ “A” là xâu kí tự chứa kí tự A và kí tự ‘ ’, được mãstr[8] ‘ ’ hóa bằng 2 bytestr[9]Vào ra với xâu kí tự (1) Sử dụng hàm print() printf(“%s”,); Ví dụ: printf(“%s”,str); Hàm scanf() scanf(“%s”,); Ví dụ: scanf(“%s”,str); Sử dụng chỉ thị fflush(stdin) nếu đi sau câu lệnh nhập khácVí dụ/*scanf4.c*/#include #include void main(){ int n; double d; char c; char str[20]; clrscr(); printf(Nhap gia tri cho cac bien ); scanf(%d%lf,&n,&d); fflush(stdin); scanf(%c,&c); scanf(%s,str); printf(So int %d ,n); printf(So double %lf ,d); printf(Ki tu %c ,c); printf(Xau ki tu %s ,str); getch();} ...
Tìm kiếm theo từ khóa liên quan:
Ngôn ngữ lập trình C Bài giảng Ngôn ngữ lập trình C Ngôn ngữ lập trình Kiểu dữ liệu mảng Khai báo một mảng Mảng nhiều chiềuGợi ý tài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 276 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 266 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 265 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 232 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 226 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 218 1 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 207 0 0 -
101 trang 200 1 0
-
Bài tập lập trình Windows dùng C# - Bài thực hành
13 trang 184 0 0 -
Giáo trình Lập trình C căn bản: Phần 1
64 trang 170 0 0