Bài giảng Kỹ thuật lập trình: Ôn tập - Trịnh Tấn Đạt
lượt xem 3
download
Bài giảng Kỹ thuật lập trình: Ôn tập giúp người học ôn tập lại các kiến thức: Hàm, mảng, kiểu struct, tạo số ngẫu nhiên trong C/C++, giới thiệu ma trận thưa (sparse matrix) vs. dense matrix (option). Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Kỹ thuật lập trình: Ôn tập - Trịnh Tấn Đạt
- Ôn Tập Function, Array, Struct Trịnh Tấn Đạt Khoa CNTT - Đại Học Sài Gòn Email: trinhtandat@sgu.edu.vn Website: https://sites.google.com/site/ttdat88/
- Nội dung ▪ Hàm ▪ Mảng o 1D-Array o 2D-Array ▪ Kiểu struct ▪ Tạo số ngẫu nhiên trong C/C++ ▪ Giới thiệu Ma trận thưa (sparse matrix) vs. dense matrix (option)
- Macro vs. Function ▪ Macro: được dùng để chỉ những định nghĩa được viết ở phần Preprocessor, thay vì đặt nó vào trong phần thực thi của file nguồn Ví dụ : #define TONG_HAI_SO(x, y) (x) +(y) ▪ Function: là một loại chương trình con, gồm tên hàm, các tham số và thân hàm (chứa các phát biểu chương trình), thực thi một việc cụ thể. Ví dụ: int TongHaiSo(int x, int y) { return x+y; }
- Macro vs. Function Ví dụ: tìm số lớn nhất giữa 2 số a và b Macro Function #include #include #define MAX(A, B) ((A) > (B) ? (A) : (B)) int timMax(int, int); // prototype int main() int main() { { int a = 5, b = 7; int a = 5, b = 7; float c = 5.6, d = 4.5; printf("\nMAX= %d", timMax (a, b)); printf("\nMAX= %d", MAX(a, b)); return 0 ; return 0 ; } } int timMax(int x, int y) Gọi hàm { return ((x) > (y) ? (x) : (y)); } Định nghĩa hàm
- Ví Dụ Tính x^n Hàm có giá trị trả về và hàm void #include // khai bao prototype int power(int, int); void power_2(int, int); // ham tinh so mu int power(int ix, int in) { int main() int i, ip = 1; { for(i = 1; i
- Ví Dụ Tăng giá trị của biến lên một đơn vị Tham chiếu và tham trị các thay đổi cho tham số hình thức (trong hàm) không làm thay đổi đối với tham số thực. #include void thamtri(int ix, int iy) int main() { { int ia = 5, ib = 5; ix += 1; //cong ix them 1 thamtri(ia, ib); iy += 1; //cong iy them 1 // ia = 5 ; ib = 5 } printf("a = %d, b = %d\n", ia, ib); void thamchieu(int &ix, int &iy) thamchieu(ia, ib); { // ia =6; ib= 6 ix += 1; //cong ix them 1 printf("a = %d, b = %d\n", ia, ib); iy += 1; //cong iy them 1 return 0; } } toán tử địa chỉ & tham số hình thức và tham số thực cùng địa chỉ mọi thay đổi đối với tham số hình thức cũng làm thay đổi tham số thực.
- Ví Dụ Biến toàn cục (global variable) và biến cục bộ (local variable) #include void local_func(); int global_var = 10; // Biến toàn cục int main() { printf("global_var:%d\n", global_var); // 10 local_func(); // ra khoi ham local_func() printf("global_var:%d\n", global_var); // 10 return 0; } Biến global_var = 5 khai báo trong hàm local_func chỉ có ảnh hưởng trong phạm vi hàm và chu trình sống của nó bắt đầu từ lúc gọi hàm đến khi thực hiện xong void local_func() { printf("global_var in local func:%d\n", global_var); // 10 int global_var = 5; // biến cục bộ printf("local_var:%d\n", global_var); // 5 }
- Array: 1D-Array ▪ Chỉ số của mảng bắt đầu từ 0 -> N-1 ( với N là số lượng phần tử của mảng) ▪ Toán tử [] : toán tử lấy chỉ số (chi dùng khi các dãy vùng nhớ liên tiếp) Ví dụ: Mảng a có 5 phần tử int a[10]; a[0] = 1; a[1] = 10; a[2] = 21; a[3] = -1; a[4] = -4;
- Ví dụ: #include Các thao tác trên mảng void nhapmang(int a[], int); void duyetmang(int a[], int); int main() { int a[100]; int n; nhapmang(a,n); duyetmang(a,n); return 0; } // cout
- Ví dụ: Tính tổng
- Ví dụ Đếm số lượng phần tử thỏa điều kiện
- Ví dụ Ví dụ:Tìm số nguyên tố đầu tiên trong mảng Kỹ thuật đặt cờ hiệu
- Ví dụ Xóa phần tử tại vị trí k
- Ví dụ: Thêm một phần tử vào vị trí k
- Ví dụ Giả sử có đủ vùng nhớ để gán a[n] = x; trước vòng lặp while - > chuyện gì xảy ra????? Tìm kiếm phần tử x trong mảng
- Ví dụ Bài toán sắp xếp
- Ví dụ Trộn 2 mảng một chiều a, b các phần tử xen kẽ nhau thành một mảng một chiều (a, b có thể có số phần tử khác nhau).
- Ví dụ: Sắp xếp các phần tử trên mảng sao cho các số dương tăng dần và các số âm giảm dần
- Array: 2D-Array
- Mảng 2 chiều
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Kỹ thuật lập trình - Phạm Thế Bảo
0 p | 220 | 32
-
Bài giảng Kỹ thuật lập trình: Chương I - Lưu Hồng Việt
48 p | 194 | 23
-
Bài giảng Kỹ thuật lập trình: Chương IV - Lưu Hồng Việt
32 p | 151 | 17
-
Bài giảng Kỹ thuật lập trình: Chương III - Lưu Hồng Việt
51 p | 147 | 15
-
Bài giảng Kỹ thuật lập trình: Chương V - Lưu Hồng Việt
19 p | 127 | 15
-
Bài giảng Kỹ thuật lập trình: Phần 1 - ĐH CNTT&TT
37 p | 114 | 10
-
Bài giảng Kỹ thuật lập trình - Bài 1: Tổng quan về kỹ thuật lập trình
65 p | 164 | 8
-
Bài giảng Kỹ thuật lập trình: Bài 1 - Phạm Đình Sắc
9 p | 127 | 7
-
Bài giảng Kỹ thuật lập trình nâng cao: Chương 4 - ThS. Dương Thành Phết
26 p | 92 | 7
-
Bài giảng Kỹ thuật lập trình - Chương 10: Tổng kết môn học (Trường Đại học Bách khoa Hà Nội)
67 p | 15 | 4
-
Bài giảng Kỹ thuật lập trình: Chương 1 - Trần Quang
39 p | 8 | 2
-
Bài giảng Kỹ thuật lập trình: Chương 2 - Trần Quang
25 p | 10 | 2
-
Bài giảng Kỹ thuật lập trình: Chương 7 - Trần Quang
28 p | 6 | 2
-
Bài giảng Kỹ thuật lập trình: Chương 8 - Trần Quang
34 p | 7 | 2
-
Bài giảng Kỹ thuật lập trình: Chương 9 - Trần Quang
33 p | 3 | 2
-
Bài giảng Kỹ thuật lập trình: Chương 3 - Trần Quang
52 p | 8 | 1
-
Bài giảng Kỹ thuật lập trình: Chương 4 - Trần Quang
32 p | 6 | 1
-
Bài giảng Kỹ thuật lập trình: Chương 6 - Trần Quang
37 p | 10 | 1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn