1. Trang chủ
  2. » Công Nghệ Thông Tin

Ôn tập kỹ thuật lập trình

16 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Hàng ngày, bạn dùng điện thoại di động để nhắn tin, gọi điện. Để điện thoại của bạn hoạt động được, cần có phần mềm cài đặt bên trong và phần mềm tại công ty viễn thông cung cấp dịch vụ điện thoại để tính cước.

Ôn tập kỹ thuật lập trình GV: Nguyễn Hữu Thể Khoa CNTT – Đại Học Cửu Long NỘI DUNG Hàm thủ tục Con trỏ CTDL1- Nguyễn Hữu Thể I Hàm thủ tục I.1 Hàm − Khi định nghĩa hàm, ta khai báo tường minh giá trị trả hàm thực xong − Cú pháp: (danh sách tham số) { //Thân hàm return //cùng kiểu liệu với hàm } CTDL1- Nguyễn Hữu Thể I.1 Hàm Ví dụ: tính tổng số nguyên a, b Trả giá trị tổng số int TinhTong(int a, int b) { int tong; tong = a + b; return tong; } int TinhTong(int a, int b) { return (a+b); } Gọi hàm main() void main() { int a=4, b=5; int tmp; tmp = TinhTong(a,b); printf(“Tong so:%d” ,tmp); void main() { int a=4, b=5; printf(“Tong so la: %d”, TinhTong(a,b)); } } CTDL1- Nguyễn Hữu Thể I.2 Thủ tục (Hàm khơng có giá trị trả về) − Thủ tục không trả giá trị, ta dùng từ khóa void để khai báo kiểu − liệu Cú pháp: void (danh sách tham số) { //Thân hàm, xử lý liệu //Nếu cần biết thơng tin dl in hình } CTDL1- Nguyễn Hữu Thể I.2 Thủ tục Ví dụ: tính tổng số nguyên a, b In kết hình void TinhTong(int a, int b) { int tong; tong = a + b; printf(“%d”,tong); } void TinhTong(int a, int b) { printf(“%d”,(a+b)); } Gọi hàm main() void main() { int a=4, b=5; TinhTong(a,b); } void main() { TinhTong(4,5)); } CTDL1- Nguyễn Hữu Thể Cách tổ chức mã nguồn C Cách 1: khai báo prototype #include #include //khai báo prototype void TinhTong(int a, int b); void main() { int a=4, b=5; TinhTong(a,b); getch(); } void TinhTong(int a, int b) { int tong; tong = a + b; printf(“%d”,tong); } CTDL1- Nguyễn Hữu Thể Cách 2: để hàm main sau #include #include void TinhTong(int a, int b) { int tong; tong = a + b; printf(“%d”,tong); } void main() { int a=4, b=5; TinhTong(a,b); getch(); } II Con trỏ II.1 Truy cập địa − Trong ngơn ngữ lập trình, biến khai báo, ba thuộc tính sau liên kết đến nó: Nội dung nhớ Tên định danh biến Địa chỉ: FFF0 10 Kiểu liệu liên quan … Địa nhớ … Ví dụ: khai báo biến … int n = 10; n tên định danh biến, có kiểu int lưu trữ nhớ máy tính Xuất: printf(“%d”,n); //in nội dung biến printf(“%0X”,&n);//in địa biến CTDL1- Nguyễn Hữu Thể II.1 Truy cập địa Ví dụ: void main() { int n=10; printf(“%d”,n); //in nội dung biến printf(“%0X”,&n);//in địa biến } Kết thực sau: 10 FFF0 • • Ta thấy giá trị n 10 Địa biến n theo số hexa FFF0 CTDL1- Nguyễn Hữu Thể II.2 Biến tham chiếu − Dùng biến khác truy cập đến địa với biến có, ta − sử dụng biến tham chiếu (references) Cú pháp: type& alias = name type: kiểu liệu alias: tên biến tham chiếu name: tên biến mà biến alias tham chiếu đến void main() { int n=10; int& r=n; printf(“n=%d, r=%d”,n,r); n++; printf(“n=%d, r=%d”,n,r); } Kết n = 10, r = 10 n= 11, r = 11 10 CTDL1- Nguyễn Hữu Thể II.3 Biến trỏ − Dùng để lưu địa nhớ đối tượng − Cú pháp: type* var type: kiểu liệu var: biến trỏ Ví dụ: int x=10; int* p; p=&x; //p lưu địa x, hay p trỏ đến x Ghi chú: (*p): nội dung p toán tử (*): toán tử đọc nội dung gián tiếp thông qua trỏ 11 CTDL1- Nguyễn Hữu Thể II.3 Biến trỏ void main() Ví dụ: { int x=10; int* p=&x; //p tr? d?n x printf("Dia chi cua x: %0X \n",&x); printf("Noi dung cua x: %d \n",x); printf("Dia chi cua p: %0X \n",&p); printf("Noi dung cua p: %0X",p); printf("Noi dung tai dia chi ma p tro den: %d",*p); } Biến Địa Nội dung (giá trị) x FFF0 (&x) 10 (x) p FFEE (&p) FFF0 (&x hay p=&x) CTDL1- Nguyễn Hữu Thể 12 Ví dụ void HoanVi_1(int a, int b) { int tmp = a; a = b; b = tmp; } void main() { int a = 1, b = 2; HoanVi_1(a, b); printf("a = %d",a); printf("b = %d",b); } void HoanVi_2(int *a, int *b) { int tmp = *a; *a = *b; *b = tmp; } void main() { int *a = 1, HoanVi_2(a, printf("a = printf("b = } void HoanVi_3(int &a, int &b) { int tmp = a; a = b; b = tmp; } void main() { int a = 1, b = 2; HoanVi_3(a, b); printf("a = %d", a); printf("b = %d", b); } *b = 2; b); %d",*a); %d",*b); 13 CTDL1- Nguyễn Hữu Thể II.4 Con trỏ mảng − Con trỏ mảng chiều int a[] = {4,5,7,9}; Truy xuất phần tử thứ hai a[1]=5 Sử dụng trỏ: • • Tên mảng xem trỏ Truy xuất phần tử thứ i: a[i] hay *(a+i) − Con trỏ mảng chiều int a[2][3]={{4,5,7}, {9,10,12}}; Truy xuất phần tử thứ i=1,j=1 là: a[1][1]=10 Sử dụng trỏ: • • Tên mảng xem trỏ Truy xuất phần tử thứ i,j: a[i][j] hay *(*(a+i)+j) 14 CTDL1- Nguyễn Hữu Thể Bài tập Cho mảng chiều int a[] = {4,5,7,9} Viết thủ tục xuất giá trị mảng hình (sử dụng trỏ truy xuất mảng) Cho mảng chiều int a[2][3]={{4,5,7},{9,10,12}}; Viết thủ tục xuất giá trị mảng hình (sử dụng trỏ truy xuất mảng) 15 CTDL1- Nguyễn Hữu Thể 16 ... void main() { int a=4, b=5; TinhTong(a,b); getch(); } II Con trỏ II.1 Truy cập địa − Trong ngôn ngữ lập trình, biến khai báo, ba thuộc tính sau liên kết đến nó: Nội dung ô nhớ Tên định danh biến... địa x, hay p trỏ đến x Ghi chú: (*p): nội dung p toán tử (*): toán tử đọc nội dung gián tiếp thông qua trỏ 11 CTDL1- Nguyễn Hữu Thể II.3 Biến trỏ void main() Ví dụ: { int x=10; int* p=&x; //p... Tên mảng xem trỏ Truy xuất phần tử thứ i,j: a[i][j] hay *(*(a+i)+j) 14 CTDL1- Nguyễn Hữu Thể Bài tập Cho mảng chiều int a[] = {4,5,7,9} Viết thủ tục xuất giá trị mảng hình (sử dụng trỏ truy xuất

Ngày đăng: 20/05/2021, 03:42

TỪ KHÓA LIÊN QUAN