Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 78 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
78
Dung lượng
660,87 KB
Nội dung
lOMoARcPSD|17838488 TR¯âNG Đ¾I HâC HÀNG HÀI VIàT NAM BM.02-QT.PDT.01 26/11/13-REV: KHOA CÔNG NGHà THÔNG TIN -*** - BI GING TấN HC PHN : Kỵ THUT LP TRÌNH C Mà HàC PHÄN : 17206 TRÌNH Đà ĐÀO T¾O : Đ¾I HâC CHÍNH QUY Hải Phịng, ngày &&&&& Hải Phịng, ngày &&&&& Hải Phịng, ngày &&&&& TR¯ỉNG KHOA TR¯ỉNG Bà MƠN NG¯äI BIÊN SO¾N TS LÊ QC ĐàNH TS NG DUY TR¯âNG GIANG HÀI PHÒNG – 2015 i Downloaded by hây hay (vuchinhhp3@gmail.com) Th S Nguyßn H¿nh Phúc lOMoARcPSD|17838488 MĀC LĀC Danh māc hình vẽ vii Danh māc bÁng vii CH¯¡NG GIâI THIàU 1.1 Giãi thiáu ngơn ngā lập trình C 1.2 CÃu trúc chung ch°¢ng trình C 1.3 Các phÅn tÿ c¢ bÁn ngơn ngā lập trình C 1.4 Các b°ãc c¢ bÁn lập ch°¢ng trình 11 1.5 Mát số công cā (IDE) cho lập trình C 12 1.6 Biến, hằng, biáu thức v cỏc kiỏu d liỏu c sỗ 14 Bài tập 23 CH¯¡NG CÁC CÂU LàNH TRONG C 24 2.1 Lánh gán, lánh gáp 24 2.2 Hàm in dā liáu hình 26 2.3 Hàm nhập dā liáu vào từ bàn phím 29 2.4 Câu lánh rẽ nhánh 32 2.5 Câu lánh lựa chán-lánh switch 34 2.6 Câu lánh lặp 35 2.7 Câu lánh break, continue 38 Bài tập: 38 CH¯¡NG HÀM 40 3.1 Khỏi niỏm vò chÂng trỡnh 40 3.2 Hàm C 40 3.2 Tham số hàm 41 3.3 Biến ton cc, bin òa phÂng 42 3.4 Hàm không cho giá trß: 43 3.5 Hàm đá qui 44 3.6 Bá tißn sÿ lý C 47 Bài tập 49 CH¯¡NG KIàU DĀ LIàU CÓ CÂU TRÚC 50 4.1 MÁng 50 4.2 Xâu ký tự 54 BÁng 4.2 Mát số hàm vß xâu 55 4.3 Biến trỏ 55 4.4 Con trỏ mÁng 56 ii Downloaded by hây hay (vuchinhhp3@gmail.com) lOMoARcPSD|17838488 4.5 Kiáu bÁn ghi (struct) 59 Bài tập 64 CH¯¡NG DĀ LIàU KIàU TàP 66 5.1 Khái niám vß táp tin 66 5.2 CÃu trúc phân lo¿i táp 66 5.3 T¿o táp đá ghi, đác dā liáu 67 5.4 Các hàm khác 74 Bài tập 77 TÀI LIàU THAM KHÀO 78 iii Downloaded by hõy hay (vuchinhhp3@gmail.com) lOMoARcPSD|17838488 ò cÂng chi tit hãc phần Tên hãc phần: Kÿ thuÁt lÁp trình (C) Mã HP: 17206 a Số tín chỉ: 03 TC BTL ĐAMH b Đơn vị giảng dạy: Bá môn Khoa hác máy tính c Phân bổ thời gian: - Tổng số (TS): 60 tiết - Lý thuyết (LT): 28 tiết - Thực hành (TH): 30 tiết - Bài tập (BT): tiết - H°ãng dẫn BTL/ĐAMH (HD): tiết - Kiám tra (KT): tiết d Điều kiện đăng ký học phần: Hác phÅn đ°ÿc bố trí sau hác phÅn: Đ¿i số, Tin hác Đ¿i c°¢ng e Mục đích, yêu cầu học phần: Kiến thức: - Nắm bắt đ°ÿc cÃu trúc, cách viết cách thực hián mát ch°¢ng trình xây dựng ngơn ngā lập trình C - Có thá sÿ dāng ngơn ngā lập trình C đá giÁi tốn tin hác c¢ bÁn Kỹ năng: - Thành th¿o viác sÿ dāng câu lánh c¢ bÁn ngơn ngā C - Có thá dùng ngơn ngā lập trình C đá giÁi tốn tin hác c¢ bÁn Thái độ nghề nghiệp: - Dựa kiến thức hác vß ngơn ngā lập trình C có thá tự tiếp cận đ°ÿc ngơn ngā lập trình có khác f Mơ tả nội dung học phần: - Hác phÅn trình bày nhng ò c bn vò lp trỡnh núi chung lập trình ngơn ngā C nói riêng vãi nỏi dung c thỏ vò cu trỳc chung ca chÂng trình, thành phÅn c¢ bÁn gồm hằng, biến, ch°¢ng trình con; kiáu dā liáu c¢ bÁn nhÃt C; Các câu lánh cÃu trúc câu lánh C; Cách thức cách xây dựng mát ch°¢ng trình dựa ngơn ngā lập trình C thao tác so¿n thÁo mát ch°¢ng trình ngơn ngā C g Người biên soạn: Nguyßn H¿nh Phúc – Bß mơn Khoa hãc máy tính, Khoa CNTT h Nội dung chi tiết học phần: PHÂN PHàI Sà TIÀT TÊN CH¯¡NG MĀC TS LT BT TH HD Ch°¢ng Giái thiáu 1.1 Giới thiệu ngôn ngữ lập trình C 0,25 1.2 Cấu trúc chung chương trình C 0,25 1.3 Các phần tử ngơn ngữ lập trình C 0,50 1.4 Các bước lập chương trình 0,50 1.5 Một số cơng cụ (IDE) cho lập trình C 0,50 0,5 1.6 Biến kiểu liệu sở 1,00 Bài tập 0,5 Nội dung tự học(10t): - Tự đọc cách Debug chương trình -Xem chương trình Examples,… Ch°¢ng Các câu lánh c¢ bÁn C 17 2.1 Lệnh gán, lệnh gộp 0,5 0,5 2.2 Hàm in liệu hình 0,5 1,0 2.3 Hàm nhập liệu vào từ bàn phím 0,5 1,0 2.4 Câu lệnh rẽ nhánh 1,5 1,5 2.5 Câu lệnh lựa chọn 0,5 1,0 2.6 Câu lệnh lặp 1,5 1,5 iv Downloaded by hây hay (vuchinhhp3@gmail.com) KT 0 lOMoARcPSD|17838488 2.7 Lệnh break, continue, … 1,0 1,0 Bài tập 2,0 1,5 Nội dung tự học(15t): - Các lệnh nhập chuỗi, tìm hiểu macro Ch°¢ng Hàm 12 3.1 Khái niệm chương trình 0,5 3.2 Hàm C 1,0 1,0 3.3 Tham số hàm 1,5 1,5 3.4 Biến toàn cục biến địa phương 1,5 1,5 3.5 Sử dụng thư viện 0,5 0,5 Bài tập 1,5 Nội dung tự học(10t): - Tự làm thư viện riêng - Tìm hiểu thư viện algorithm.h Ch°¢ng Kiáu dā liáu có cÃu trúc 18 10 4.1 Dữ liệu kiểu mảng/con trỏ 2,0 2,0 4.2 Dữ liệu kiểu xâu ký tự 1,0 1,0 4.3 Dữ liệu kiểu ghi 2,0 3,0 4.4 Một số ví dụ tổng hợp 1,5 2,0 Bài tập 1,5 2,0 Nội dung tự học(15t): - Kiểu union, enum, trỏ Ch°¢ng Dā liáu kiáu táp tin (file) 4 5.1 Khái niệm 0,5 5.2 Cấu trúc phân loại tệp 0,5 5.3 Tạo tệp để ghi liệu 1,0 1,0 5.4 Mở tệp liệu có để đọc liệu 1,0 1,0 5.5 Các hàm xử lý tệp C 1,0 1,0 Bài tập 1,0 Nội dung tự học (10t): - Tệp nhị phân: cách khai báo, đọc/ghi liệu Tổng sá tiÁt: 60 28 30 i Mô tả cách đánh giá học phần: Sinh viên phÁi tham dự tối thiáu 75% số giå lên lãp phÁi đ¿t điám thành phÅn X1, X2, X3 từ 4,0 trỗ lờn (X1 l iỏm ỏnh giỏ ý thc, thái đá tham gia hác tập, X2 điám trung bình nhÃt 02 kiám tra lãp có điám kiám tra viác ghi nhã kiến thức, tự hác điám vận dāng kiến thức, X3 điám đánh giá kết quÁ thực hành) Điám hác phÅn (Z) đ°ÿc tính theo cơng thức: Z = 0.5X + 0.5Y Trong đó: X: điám q trình, X=0.3X1+0.3 X2+0.4X3 Y: điám thi kết thúc hác phÅn Hình thức thi: thi thực hành máy, vÃn đáp, thåi gian 75 phút - Thang điám đánh giá: A+, A, B+, B, C+, C, D+, D F k Giáo trình: Ph¿m Văn Ât, Kỹ thuật lập trỡnh C - C sỗ v nõng cao, NXB KHKT, 2008 l Tài liệu tham khảo: Hoàng Đức HÁi, Ngơn ngā lập trình C từ A đến Z, NXB Lao đáng, 2008 Nguyßn Hāu Ngự, Bài tập lập trình C nâng cao Nhà xuÃt bÁn Tri Thức, 2007 Nguyßn Quang Huy, Nguyßn Thanh Thủy, Bài tập lập trình C, NXB KHKT, 2007 v Downloaded by hây hay (vuchinhhp3@gmail.com) 1 lOMoARcPSD|17838488 m Ngày phê duyệt: 30/06/2014 n Cấp phê duyệt: Khoa CNTT Tr°ởng Khoa P Tr°ởng Bß mơn Ng°ãi biên so¿n TS Lê Quốc Định ThS Nguyễn Văn Thủy ThS Nguyễn Hạnh Phúc o Tiến trình cập nhật Đề cương: CÁp nhÁt lần 1: ngày 25/06/2014 Ng°åi cập nhật Nßi dung: Rà sốt theo kế ho¿ch Nhà tr°ång gồm: - Chỉnh sÿa, làm rõ māc e, i theo māc tiêu đổi bÁn Nguyễn Hạnh Phúc - Māc h: bổ sung Nái dung t hỏc cui mòi chÂng mc, b P Trỗng Bá môn sung mát số nái dung tự hác - Bổ sung māc m, n, o Nguyễn Văn Thủy CÁp nhÁt lần 2: ngày 11 / 05 /2015 Ng°åi cập nhật Nßi dung: Rà sốt theo kế ho¿ch Chỉnh sÿa l¿i māc i theo tiêu chí vß cách đánh giá kết quÁ hác tập Ng Duy Trường Giang Trỗng Bỏ mụn Ng Duy Trng Giang vi Downloaded by hây hay (vuchinhhp3@gmail.com) lOMoARcPSD|17838488 Danh māc hình v¿ Hình 1.1 Giao dián Turbo C 12 Hình 1.2 Giao dián Dev C 12 Hình 1.3 Giao dián Pelles C for Windows 13 Hình 1.4 Giao dián C-Free 14 Danh māc bÁng BÁng 1.1 Danh māc từ khóa C 10 BÁng 1.2 Mát số tên sai 10 BÁng 1.3 Mã ASCII mát số ký tự 14 BÁng 1.4 Dā liáu kiáu char 14 BÁng 1.5 Dā liáu kiáu số nguyên 15 BÁng 1.6 Dā liáu kiáu số thực 15 BÁng 1.7 Các phép tốn hai ngơi số hác 16 BÁng 1.8 Các phép toán quan há 17 BÁng 1.9 Các phép toán logic 18 BÁng 1.10 Thứ tự °u tiên phép toán 19 BÁng 2.1 Ví dā vß chußi đißu khián 27 BÁng 2.2 Ý nghĩa ký tự chuyán d¿ng 28 BÁng 2.3 Ý nghĩa ký tự chuyán d¿ng 30 BÁng 4.1 Ví dā mát số mÁng 50 BÁng 4.2 Mát số hàm vß xâu 55 BÁng 5.1 Các kiáu truy cập táp tin 68 vii Downloaded by hây hay (vuchinhhp3@gmail.com) lOMoARcPSD|17838488 CH¯¡NG GIàI THIàU 1.1 Giái thiáu ngơn ngā lÁp trình C KhoÁng cuối nhāng năm 1960 đÅu 1970 xuÃt hián nhu cÅu cÅn có ngơn ngā bậc cao đá hß trÿ cho nhāng nhà tin hác viác xây dựng phÅn mßm há thống, há đißu hành Ngơn ngā C đåi từ đó, đ°ÿc phát trián t¿i phịng thí nghiám Bell Đến năm 1978, giáo trình " Ngơn ngā lập trình C " tác giÁ ngôn ngā Dennish Ritchie B.W Kernighan viết, đ°ÿc xuÃt bÁn phổ biến ráng rãi C ngơn ngā lập trình đa Ngồi viác C đ°ÿc dùng đá viết há đißu hành UNIX, ng°åi ta nhanh chóng nhận sức m¿nh C viác xÿ lý cho vÃn đß hián đ¿i tin hác C không gắn vãi bÃt kỳ mát há đißu hành hay máy nào, mặc dÅu đ°ÿc gái "ngơn ngā lập trình há thống" đ°ÿc dùng cho viác viết há đißu hành, tián lÿi cho cÁ viác viết ch°¢ng trình xÿ lý số, xÿ lý văn bÁn c¢ sỗ d liỏu 1.2 Cu trỳc chung ca chÂng trỡnh C Mát ch°¢ng trình C có thá đ°ÿc đặt mát nhißu file văn bÁn khác Mßi file văn bÁn chứa mát số phÅn ch°¢ng trình Vãi nhāng ch°¢ng trình đ¢n giÁn ngắn th°ång cÅn đặt chúng mát file Mát ch°¢ng trình gồm nhißu hàm, mßi hàm phā trách mát cơng viác khác ch°¢ng trình Đặc biát hàm có mát hàm nhÃt có tên hàm main() Khi ch¿y ch°¢ng trình, câu lánh hàm main() đ°ÿc thực hián đÅu tiên Trong hàm main() có thá có câu lánh gái đến hàm khác cÅn thiết, hàm ch¿y l¿i có thá gái đến hàm khác nāa đ°ÿc viết ch°¢ng trình (trừ viác gái quay l¿i hàm main()) Sau ch¿y đến lánh cuối hàm main() ch°¢ng trình kết thúc Cā thá, thơng th°ång mát ch°¢ng trình gồm có nái dung sau: − PhÅn khai báo táp nguyên mẫu: khai báo tên táp chứa nhāng thành phÅn có sẵn (nh° chuẩn, kiáu chuẩn hàm chuẩn) mà NSD (ng°åi sÿ dāng) dùng ch°¢ng trình − PhÅn khai báo kiáu dā liáu, biến, NSD đßnh nghĩa đ°ÿc dùng chung tồn bá ch°¢ng trình − Danh sách hàm ch°¢ng trình (do NSD viết, bao gồm cÁ hàm main()) CÃu trúc chi tiết mßi hàm đ°ÿc đß cập đến ch°¢ng D°ãi mát đo¿n ch°¢ng trình đ¢n giÁn gồm hàm hàm main() Nái dung ch°¢ng trình dùng in hình dịng chā: Chao cac ban, bay gio gio #include // khai báo táp nguyên mẫu đá đ°ÿc sÿ dāng hàm printf, scanf int main() { int h = 2; // Khai bỏo v khỗi to bin h = printf(