ĀY BAN NHÂN DÂN QUÀN GÒ VÀP TR¯âNG TRUNG CÂP NGH QUANG TRUNG -----úû úû----- GIÁO TRÌNH MÔN HàC: Kþ THUÀT LÀP TRÌNH NGHÂ: QUÀN TRÞ M¾NG MÁY TÍNH TRÌNH ĐÞ: TRUNG CÂP (Lưu hành nội bộ) (Ban hành theo Quyết định số:342/QĐ-QT ngày 28 tháng 10 năm 2021 của Trường Trung cấp nghề Quang Trung) Tp.HCM, nm 2021 1 Giáo trình Kÿ thuÁt lÁp trình TUYÊN Bà BÀN QUYÂN: Tài liệu học tập này phục vụ cho việc dạy và học tại khoa Công nghệ Thông tin, Trường Trung cấp nghề Quang Trung, Q. Nhằm tôn trọng bản quyền, chúng tôi nghiêm cấm các hình thức sao chép, chuyển đổi, ghi âm, ghi hình… khi chưa có sư cho phép của tác giả và đơn vị sở hữu tài liệu này. LâI GIàI THIàU Giáo trình <Kỹ thuật lập trình” được tóm gọn lý thuyết căn bản, các bài thực hành mẫu thiết thực, cung cấp các kiến thức bản nhất làm nền tảng cho chuyên ngành CNTT. Nội dung giáo trình được trình bày qua các chương sau: tổng quan về kỹ thuật lâp trình, các khái niệm cơ bản, các lệnh có cấu trúc, hàm, kiểu mảng.
Giáo trình được trình bày đa dạng các bài tập và hươꄁng dẫn giải vơꄁi nhiều chủ đề khác nhau như căn bản về kỹ thuật lập trình, từ các bài ứng dụng thực tiễn và ngôn ngữ lập trình minh họa là C hoặc C#… Các bài tập được sắp xếp thứ tự cấp độ từ dễ đến mở rộng phw hợp cho người tự học, tự thực hành,…trình độ trung cấp trung cấp…làm nền tảng về kiến thức căn bản của chuyên ngành CNTT. Mặc dw cố gắng biên soạn, tuyển chọn các bài thực hành thiết thưc, dễ sử dụng … nhưng không thể tránh khỏi các thiếu sót ngoài mong muốn. Rất mong bạn đọc gần xa góp ý để giáo trình được tốt hơn. Hồ Chí Minh, 2021 Tham gia biên soạn: Khoa Công Nghệ Thông Tin Trường Trung cấp nghề Quang Trung Địa Chỉ: 689 Quang Trung, Phường 8, quận Gò Vấp, Tp.Hồ Chí Minh Tel: 028.
35892025 Mọi góp ý vui lòng liên hệ: Nguyễn Văn Lân Email: nguyenlangroup@gmail.com – nguyenlan@live.com Website: www.Net Điện thoại: 098 560 1838 Trân trọng giơꄁi thiệu đến bạn. Khoa Công nghệ thông tin – TCN Quang Trung Trang 2 Giáo trình Kÿ thuÁt lÁp trình MĀC LĀC LâI GIàI THIàU. 2 GIÁO TRÌNH MÔN HàC. 5 TÊN MÔN HàC: Kþ THUÀT LÀP TRÌNH.
5 CH¯¡NG 1: TäNG QUAN V Kþ THUÀT LÂP TRÌNH. Các thành phÅn c¢ bÁn căa ngôn ngÿ lÁp trình. Mßt sá ph°¢ng pháp lÁp trình. Ch°¢ng trình.
Môi tr°ãng viÁt mã nguãn. 24 CH¯¡NG 2: CÁC KHÁI NIàM CN BÀN. Ngôn ngÿ lÁp trình. Các thành phÅn cn bÁn ngôn ngÿ C.
Chú thích. Khai báo Header - th° viện. Kiểu dữ liệu. Tên biến và khai báo biến.
NhÁp – xuÃt dÿ liáu. NhÁp dữ liệu. XuÁt dữ liệu. 41 Khoa Công nghệ thông tin – TCN Quang Trung Trang 3 Giáo trình Kÿ thuÁt lÁp trình CH¯¡NG 3: CÁC LàNH CÓ CÂU TRÚC.
CÃu trúc điÃu kián If-Else. CÃu trúc lặp For. CÃu trúc lặp While. CÃu trúc lặp Do.
CÃu trúc Break, Continue và Goto. 60 CH¯¡NG 4: HÀM. Giái thiáu hàm. 82 CH¯¡NG 5: KIÄU MÀNG.
Tång quan và kiÅu mÁng. Mßt sá thao tác phÅn tử mÁng. 110 BÀI TÀP TäNG HþP. 113 TÀI LIàU THAM KHÀO.
135 Khoa Công nghệ thông tin – TCN Quang Trung Trang 4 Giáo trình Kÿ thuÁt lÁp trình GIÁO TRÌNH MÔN HàC TÊN MÔN HàC: Kþ THUÀT LÀP TRÌNH Mã mô đun/môn hác: MH 09 I. VÞ TRÍ, TÍNH CHÂT CĂA MÔN HàC - Vị trí: Mô đun đ°ợc bố trí sau khi học sinh học xong các môn học, mô đun chung, tin văn phòng, căn b¿n về tin học. - Tính chÁt: Là môn học c¡ sá nghề bắt buộc, làm nền t¿ng cho các môn học, mô đun khác. MĀC TIÊU CĂA MÔN HàC Sau khi học xong môn học này, ng°ßi học có kh¿ năng: * KiÁn thức: - Trình bày đ°ợc khái niệm về kỹ thuÁt lÁp trình máy tính; - Mô t¿ đ°ợc ngôn ngữ lÁp trình: cú pháp, công dÿng cāa các câu lệnh; - Phân tích đ°ợc ch°¡ng trình: xác định nhiệm vÿ ch°¡ng trình; - Thực hiện đ°ợc các thao tác trong môi tr°ßng phát triển phần mềm: biên tÁp ch°¡ng trình, sử dÿng các công cÿ, điều khiển, thực đ¡n lệnh trợ giúp, gỡ rối, b¿y lỗi,v.; - Mô t¿ đ°ợc bài toàn thực tiễn vào máy tính, dữ liệu vào, dữ liệu ra, xử lí mã nguồn * Kÿ nng: - Thực hành viết ch°¡ng trình từ căn b¿n đến bài toàn thực tiễn; - Phân tích bài toán, xác định rõ dữ liệu vào-ra và xử lí mã nguồn; - Tìm lỗi, xử lí lỗi, đọc các thông báo cāa trình biên dịch; - Thao tác sử dÿng các chăc năng cāa trình biên dịch; - Kỹ năng sử dÿng máy tính thành thạo h¡n; - Phát triển t° duy, phân tích vÁn đề, phân tích bài toán cần xử lí.
* Nng lāc tā chă và trách nhiám: - Rèn luyện lòng yêu nghề, t° thế tác phong công nghiệp, tính kiên trì, sáng tạo trong công việc, trao đổi học hỏi bạn bè, làm việc nhóm, trách nhiệm với môn học, nội quy thực hành, kh¿ năng tự tìm hiểu. - Rèn luyện trách nhiệm tự học, tự tìm hiểu thêm về môn học. - Thực hiện an toàn sử dÿng máy tính, điện, trách nhiệm với trang thiết bị phòng học. Khoa Công nghệ thông tin – TCN Quang Trung Trang 5 Giáo trình Kÿ thuÁt lÁp trình - Bố trí làm việc khoa học đ¿m b¿o an toàn cho ng°ßi và ph°¡ng tiện học tÁp.
NÞI DUNG MÔN HàC CH¯¡NG 1: TäNG QUAN V Kþ THUÀT LÂP TRÌNH Mã ch°¢ng: MH09-01 ❖ Giái thiáu: Ch°¡ng này chúng ta cùng tìm hiểu các khái niệm về kỹ thuÁt lÁp trình, giới thiệu môi tr°ßng lÁp trình với ngôn ngữ lÁp trình C. ❖ Māc tiêu: - Trình bày đ°ợc các khái niệm về lÁp trình, kỹ thuÁt lÁp trình, công nghệ lÁp trình; - Trình bày đ°ợc lịch sử phát triển, ăng dÿng cāa ngôn ngữ lÁp trình; - Làm quen môi tr°ßng phát triển phần mềm; - Sử dÿng đ°ợc hệ thống trợ giúp từ help file, phần mềm Borland C++,… - Thực hiện các thao tác an toàn với máy tính. ❖ Nßi dung chính: 1. Mßt sá khái niám c¢ bÁn LÁp trình là sử dÿng ngôn ngữ để viết, hiểu các dòng lệnh, cÁu trúc dữ liệu và thuÁt toán để gi¿i quyết bài toán.
Mã ch°¡ng trình đ°ợc thông dịch và biên dịch để ch°¡ng trình sau cùng chạy đ°ợc. Thông dßch là quá trình kiểm tra và chuyển đổi câu lệnh t°¡ng ăng với ngôn ngữ máy, thực hiện từng câu lệnh. Biên dßch là quá trình kiểm tra toàn bộ mã ch°¡ng trình và chuyển đoi thành ch°¡ng trình thực thi đ°ợc. Ngôn ngÿ lÁp trình là hệ thống các ký hiệu tuân theo các qui °ớc về ngữ pháp và ngữ nghĩa, dùng để xây dựng thành các ch°¡ng trình cho máy tính.
ThuÁt toán: là tÁp hợp (dãy) hữu hạn cac chỉ thị (hành động) đ°ợc định nghĩa rõ ràng nhằm gi¿i quyết một bài toán cÿ thể nào đó. Bao gãm 5 tính chÃt căa thuÁt toán: Khoa Công nghệ thông tin – TCN Quang Trung Trang 6 Giáo trình Kÿ thuÁt lÁp trình ✓ Tính chính xác: quá trình tính toán hay các thao tác máy tính thực hiện là chính xác. ✓ Tính rõ ràng: các câu lệnh minh bạch đ°ợc sắp xếp theo thă tự nhÁt định. ✓ Tính khách quan: đ°ợc viết bái nhiều ng°ßi trên máy tính nh°ng kết qu¿ ph¿i nh° nhau.
✓ Tính phổ dụng: có thể áp dÿng cho một lớp các bài toán có đầu vào t°¡ng tự nhau. ✓ Tính kết thúc: hữu hạn các b°ớc tính toán Các b°ớc xây dựng ch°¡ng trình: 2. Các thành phÅn c¢ bÁn căa ngôn ngÿ lÁp trình - Các ký tā, sá: nh° a- z, A – Z, 0…9,. - Cú pháp: đ°ợc hiểu bái ngôn ngữ đ°ợc định nghĩa nh° ngôn ngữ Pascal định nghĩa cú pháp khác với ngôn ngữ C#,… - Ngÿ ngh*a: Phạm vi tác động cāa các đối t°ợng trong khối lệnh cāa ch°¡ng trình.
- Tên: Các đối t°ợng đ°ợc khai báo trong mã ch°¡ng trình. Khoa Công nghệ thông tin – TCN Quang Trung Trang 7 Giáo trình Kÿ thuÁt lÁp trình - Từ khoá (tên dùng riêng): Ngôn ngữ lÁp trình đ°ợc định danh bái những tên dùng riêng, chúng ta không sử dÿng tên này để đặt tên biến. Do vÁy, khi viết mã ch°¡ng trình chúng ta đặt tên đúng và dễ hiểu nhÁt không đ°ợc trùng tên từ khoá. - Hằng: Có giá trị không đổi trong quá trình thực hiện ch°¡ng trình.
- BiÁn: Do ng°ßi dùng đặt, chúng dùng để l°u trữ giá trị và có thể thay đổi. Tuỳ thuộc vào ngôn ngữ và kiểu dữ liệu cāa biến có miền giá trị khác nhau. Khi khai báo biến căn că vào phạm vi cāa cāa nó mà có biến cÿc bộ và toàn cÿc. - Chú thích: Khi viết mã ch°¡ng trình, chúng ta th°ßng chú thích để hiểu, diễn gi¿i đối t°ợng khai báo, lí do thực hiện… Tuỳ thuộc vào ngôn ngữ mà có chú thích khác nhau nh° Pascal( {.}, (*…*), C - C++ - Java – C# (//…từng dòng lệnh, /*….
Một số ngôn ngữ hiện đại đ°ợc sử dÿng rộng rãi để xây dựng phần mềm nh° Java, Visual Basic. Ph°¡ng pháp lÁp trình mới là lÁp trình h°ớng đối t°ợng đ°ợc sử dÿng rộng rãi. Một số ngôn ngữ lÁp trình nh°: ngôn ngữ máy, hợp ngữ, ngôn ngữ bÁc cao. ThuÁt giÁi (Algorithm) Là một dãy các thao tác xác định trên một đối t°ợng, sao cho sau khi th°c hiện một số hữu hạn các b°ớc thì đạt đ°ợc mÿc tiêu.Kowalski thì b¿n chÁt cāa thuÁt gi¿i: ThuÁt giÁi = Logic + ĐiÃu khiÅn Logic: Đây là phần khá quan trọng, nó tr¿ lßi câu hỏi "ThuÁt gi¿i làm gì, gi¿i quyết van đề gì?", những yếu tố trong bài toán có quan hệ với nhau nh° thế nào v.v… à đây bao gồm những kiến thăc chuyên môn mà bạn ph¿i biết để có thể tiến hành gi¿i bài toán.
Điều khiển: Là cách thăc tiến hành áp dÿng thanh phần logic để gi¿i quyết vÁn đề. Các tính chÁt cāa thuÁt toán gồm 5 tính chÁt sau: Tính chính xác: quá trình tính toán hay các thao tác máy tính thực hiện là chính xác. Tính rõ ràng: các câu lệnh minh bạch đ°ợc sắp xếp theo thă tự nhÁt định. Tính khách quan: đ°ợc viết bái nhiều ng°ßi trên máy tính nh°ng kết qu¿ ph¿i nh° nhau.
Tính phổ dụng: có thể áp dÿng cho một lớp các bài toán có đầu vào t°¡ng tự nhau. Tính kết thúc: hữu hạn các b°ớc tính toán. Khoa Công nghệ thông tin – TCN Quang Trung Trang 8 Giáo trình Kÿ thuÁt lÁp trình 4. Mßt sá ph°¢ng pháp lÁp trình LÁp trình tuyÁn tính: Sử dÿng ngôn ngữ máy để lÁp trình và sử dÿng các khoá cāa c¡ khí để nạp vào máy.