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: Ôn tập - Trịnh Tấn Đạt

Chia sẻ: Minh Vũ | Ngày: | Loại File: PDF | Số trang:56

37
lượt xem
3
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: Ô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.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình: Ôn tập - Trịnh Tấn Đạt

  1. Ô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/
  2. 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)
  3. 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; }
  4. 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
  5. 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
  6. 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.
  7. 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 }
  8. 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;
  9. 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
  10. Ví dụ: Tính tổng
  11. Ví dụ Đếm số lượng phần tử thỏa điều kiện
  12. Ví dụ Ví dụ:Tìm số nguyên tố đầu tiên trong mảng Kỹ thuật đặt cờ hiệu
  13. Ví dụ Xóa phần tử tại vị trí k
  14. Ví dụ: Thêm một phần tử vào vị trí k
  15. 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
  16. Ví dụ Bài toán sắp xếp
  17. 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).
  18. 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
  19. Array: 2D-Array
  20. Mảng 2 chiều
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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