Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 295 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
295
Dung lượng
22,37 MB
Nội dung
s GIÁO DỤC VÀ Đ À O TẠO H À L Ê VĂN H U Ỳ N H (Chủ G I A O T R N Ộ I biên) I N H NGON NGỮ LẬP TRÌNH c (Dùng N H À trường X U Ấ T B Ả N H À THON) N Ộ I - 2007 L i giới thiêu ước ta dang bước vào thời kỳ cơng đại hóa nghiệp vãn minh, Trong nhân nhằm đưa Việt cách mạng Đại hội hành Đảng Trung tồn nước to lớn đó, cơng lực ln giữ vai trị quan Chấp trở thành hóa, cơng đại nghiệp Ban Nam nghiệp ương quốc trọng Đảng lần tác đào Báo cáo Chính Cộng sản thứ IX Việt tạo trị Nam rõ: " P h t t r i ể n g i o dục đ o tạo m ộ t đ ộ n g lực quan trọng t h ú c đ ẩ y n g h i ệ p cơng nghiệp hóa, đại hóa, đ i ề u k i ệ n đ ể p h t t r i ể n n g u n lực c o n n g i - y ế u t ố c b ả n đ ể p h t t r i ể n x ã h ộ i , tăng truồng k i n h t ế nhanh b ề n vững" Quán nhận triệt chủ trương, thức giáo trình nghị Sở Giáo Uy ban nhân cho phép án biên soạn học chuyên việc nâng lực Thủ Trên chương nghiệp cao chất Hà Sở Giáo trình, lượng Hà Nội đào đào số tạo thực đề trường ủy, UBND tạo phát định định Quyết đề 231912003, Quyết trình, tạo, theo ngày dục Đào giáo trình (THCN) lượng Nội nước thành triển Trung thể phố nguồn nhân đô sở chương Sở Giáo dục Đào soạn phô Nhà chương tạo Hà Nội, tâm sâu sắc Thành tạo ban hành biển thành trọng cao chất dục Đào dân Đảng đắn tầm quan việc nâng 5620ỈQĐ-UB quan Nghị chương trình khung kinh nghiệm Bộ Giáo dục Đào rút từ thực tế đào tạo, tạo đạo trường trình, giáo trình cách THCN tổ khoa học, chức hệ ị thống cập nhật tượng học sinh THCN Bộ giáo trình trường Hà Hà Nội, hữu ích cho trường dạy tiễn phù đồng dạy học thời tài liệu có đào tạo ngành đáo bạn đọc quan tổ chức đào tạo Thủ "50 năm Thăng đối rập tham khảo kỹ thuật - nghiệp tâm đến vấn để hướng biên hoạt nhiều chương động lập ngành - Hà trình, thực thiết để kỷ niệm thành Long soạn "50 năm nghiệp, " hướng ủy, UBND, nghiệp chuyên gia đầu nhà doanh gia Hội đồng nghiệm Đây biền gắng Chúng ngành, ngành giảng đồng phản giáo dục tới kỷ niệm thành soạn mong bước viên, Thủ đô ", "1000 năm cảm ơn phô, kiện giúp biện, thu chương để ngành Thành tạo điều lần đầu chức Hội trình, tiên Sở Giáo giáo dục nhà quản đỡ, đóng đồng Thành Vụ Giáo Bộ Giáo dục Đào tạo, nhà khoa nghiệp tham trình Nội" sở, ban, chuyên giáo giải phóng Sở Giáo dục Đào tạo Hà Nội chân với nghề Việc đọc hợp Nội tài liệu giảng THON vụ đông thức thực kiến thẩm học, lý, góp ý định dục kiến, Hội trình Đào tạo Hả Nội tố cố chương trình, giáo trình Dù hết chắn khơng tránh khỏi thiếu sót, bất cập, ý kiến đóng góp bạn nhận hồn thiện giáo trình sức lần tái sau GIÁM ĐỐC SỞ G I Á O DỤC V À Đ À O TẠO Lời nói đ ầ u gịn ngữ c được phổ năm 1978 công ngôn ngữ đặc biệt Ngày nay, cụ thông hiệu chuyên thường Ngược Ngôn kế lần đầu thiết ngữ ngôn thành nghiệp, cài đặt lẻo Lỏng trình rãi c tiến nhiêu Sức mạnh D Ritchie lập trình gia phẩn tất loại máy ngữ c không lại, sức mạnh Rất gần với ngơn phải gị bó, khơng nhà cứng phần tính mềm vạn gọn lỏng tạo người lập từ tính đọng, ngắn chế sáng c không lệ thuộc vào phần ứng dụng nhắc, ngồi c hồn dụng tồn ngữ Turbo trình nghiệp thích thức hệ thống chun c có tới khơng c hãng Borland với ANSỈ học phần c Người ngôn ngữ c cứng hay phần nhằm giúp cho bạn yêu thích học hồn mềm thơng bạn ngơn giáo dụng học sinh ngữ lập trình khám phá sức mạnh c Ngơn ngữC sinh lại có ý đinh sâu vào phía sau dồng nhìn cách học ngơn thích muốn cho nuôi học vấn sinh không ngữ c Tác giả thành dưỡng lòng cho thấy c ngơn ngữ Một làm kích trình biên 80% mã tác giả có cân số bổ sung hàm đồ hoa, âm kiến Giáo viết cứng đổi ngôn tương máy chỉnh dịch c lẫn chương Sự lựa chọn thống cụ đắc lực từ máy tính sang máy tính khác, cần thay hệ cơng máy tính Vì vậy, chuyển lệnh khơng c là đẩy đủ, hồn hạn ngữ máy trình trầm tính c bắt nguồn c khơng cao, hụt vực lập trình lĩnh trở thành chun ngơn lẻo nên công ngữ bậc tiên c xuất từ đời, nhỏ gọn thiếu rộng biến Ngay trọng lập trình B Kernighan ham phải tồn n tâm trình để lập sử trình khác trường c bước trung học lùm quen đầu dễ học, học lệnh thực tình, trình bày tâm muốn mê vào ra, Tui bo Nhưng qua người cách học khơng trình khó đề mà tác giả cố gắng thể giáo khơng ngữ trình c, biết ngơn lập má cịn sử dụng biết hiệu khơng thể xem dị gỡ lỗi nhẹ, Giáo trình Mười chương khả khung phụ ví dụ minh tập đồ sộ chìa từ đầu hoa cố gắng dung giáo trình đến mơ cuối thực bảo, góp ý từ phía mong Học biết tin, PGS.TS viện Quân quát toàn kiện khả tập theo trình Nội dung chương, minh trình chạy họa để tiện thử thành hữu ích với đấm báo để giáo cơng hình viên tra sử dụng chắn giáo trình phục Các đánh số Các ví dụ hình ảnh để người học minh dễ tác giả cảm Phạm chân ơn Ban cho tác giả giáo trình giám để tác giả hồn thành hình thiện Nguyễn Đồn ý kiến q Văn báu Ban hợp việc dạy học nhận mong em học sinh bạn hiệu Văn Ất - Đại học Giao sự, PGS.TS cịn có chỗ chưa vụ tốt cho công ơn sâu sắc PGS.TS dành trường ESTIH thảo Đồng Xn - Viện thơng, - Viện góp phần Huy Công làm nghệ nên Lê Văn thời, Huỳnh lý đọc hết tác Công TS Dương Tác gia kỹ nội dung cao, khó hình tế diễn muốn thành viên tạo điều thông trợ giúp phụ lục phần thầy, bạn đồng nghiệp, giả xin chân xin bày tỏ lòng cầu hoa giáo thầy bạn học sinh, động u chứng sai sót Ngồi Tác cho trình dạy, học kiểm dịch Mặc dù cố gắng, thác phẩn theo nội dung tra kỹ lưỡng, kiếm mê ví dụ, tập, kiểm khai bao lục gồm số nâng Tất trình Bộ Giáo dục Đào tạo ban hành vã học sinh có đủ tập dùng chiều trình bạn học sinh giỏi có lỏng say Phần lập 12 chương, giáo bày chi tiết, với nhiều Phần trường chia thành hai chương trình mơi sức giả nghệ Tử Cường - thông chất lượng tin C h n g Ì CÁC KHÁI NIỆM Cơ BẢN ì CHƯƠNG TRÌNH (PROGRAM) L m ộ t g i ả i thuật đ ợ c v i ế t b ằ n g m ộ t n g ô n n g ữ l ậ p t r ì n h n o đ ó m sau k h i đ ợ c d ị c h t h n h n g ô n n g ữ m ộ t m y t í n h cụ t h ể c ó t h ể d ù n g đ ể g i ả i q u y ế t m ộ t l p c c b i t o n C c bước x lý g i ả i thuật t r o n g c h n g t r ì n h đ ợ c g ọ i c c c â u l ệ n h (statement) c c l ệ n h ( i n s t r u c t i o n ) t ù y theo c ấ p bậc n g ô n ngữ N g i c h u y ê n soạn thảo c h n g t r ì n h g ọ i n g i l ậ p t r ì n h li NGƠN NGỮ LẬP TRÌNH L m ộ t t ậ p h ợ p đ ị n h nghĩa t n g m i n h c c k ý tự, c c k ý h i ệ u v c c q u y tắc k ế t hợp c h ú n g cho p h é p v i ế t c c c h n g t r ì n h m y t í n h Số lượng c c k ý tự, k ý h i ệ u m ộ t n g ô n n g ữ l ậ p t r ì n h hữu hạn N g i l ậ p t r ì n h c h ỉ đ ợ c p h é p sử d ụ n g c c k ý t ự , k ý h i ệ u đ ó C c q u y tắc n h ằ m đ ả m b ả o đ ể n g i l ậ p t r ì n h sử d ụ n g c c k ý h i ệ u đ ú n g đ ắ n , t o đ ợ c c c t ê n , c c b i ể u t h ứ c , c c c â u l ệ n h h ợ p l ệ Q u y t ắ c đ ể t o c c c â u l ệ n h g ọ i c ú p h p IU TÍNH Cơ ĐỘNG (PORTABILITY) T í n h c đ ộ n g ( p o r t a b i l i t y ) m ộ t n g ô n n g ữ l ậ p t r ì n h t h ể h i ệ n k h ả n ă n g t h í c h ứng c ủ a m ộ t c h n g t r ì n h v i ế t b ằ n g n g ô n n g ữ đ ó v i n h i ề u l o i m y t í n h v n h i ề u h ệ đ i ề u h n h k h c N ế u m ộ t c h n g t r ì n h v i ế t b ằ n g m ộ t n g ô n n g ữ n o đ ó k h i m a n g sang m y t í n h n o l i p h ả i c h ỉ n h sửa đ ể p h ù h ợ p v i m y t í n h đ ó t h ì ta n ó i n g ô n n g ữ đ ể v i ế t c h n g t r ì n h đ ó k h n g c ó t í n h động IV CÁC L O Ạ I NGÔN NGỮ LẬP TRÌNH N g n n g ữ m y L b ộ l ệ n h c h í p v i x lý t r ê n m ộ t l o i m y t í n h cụ t h ể , t h ể h i ệ n b ằ n g c c m ã số, c c q u y tắc sử d ụ n g c c m ã s ố đ ó đ ể v i ế t c c c h n g t r ì n h đ i ề u k h i ể n trực t i ế p h o t đ ộ n g m y t í n h t n g ứng V í d ụ , t r ê n b ộ v i x lý 80286, 0 c ó nghĩa c ộ n g t h ê m m ộ t số 16 bít c ó g i trị Ì v o ghi A X V i ế t c h n g trình n g n ngữ m y đòi h ỏ i n g i lập trình phải am hiểu sâu sắc c ấ u t r ú c v h o t đ ộ n g m y t í n h C h n g t r ì n h v i ế t b ằ n g n g ô n n g ữ m y chạy nhanh h i ệ u q u ả n h n g k h n g c ó tính c đ ộ n g H ợ p n g ữ ( a s s e m b l y l a n g u a g e ) L n g ô n n g ữ l ậ p t r ì n h m m ỗ i c â u l ệ n h ứng v i m ộ t l ệ n h t r o n g n g ô n n g ữ m y , n h n g thay cho c c m ã m y v c c đ ị a c h ỉ b ộ n h l c c t g ợ i n h ( m e m o n i c s ) V í d ụ , c ũ n g l ệ n h c ộ n g t h ê m s ố Ì v o t h a n h g h i A X , l ệ n h hợp n g ữ n h sau: A D D A X , 0001 h L ậ p t r ì n h b ằ n g hợp n g ữ thực c h ấ t l ậ p t r ì n h b ằ n g n g ô n n g ữ m y n h n g đ ỡ vất vả h n D ù n g t r ì n h h ợ p d ị c h (assembler) đ ể d ị c h c h n g t r ì n h h ợ p n g ữ sang n g ô n n g ữ m y C h n g t r ì n h v i ế t b ằ n g hợp n g ữ c ũ n g k h ô n g c ó t í n h c đ ộ n g N g ô n n g ữ b i ê n d ị c h L n g n ngữ c ó thể dịch thành n g ô n ngữ m y b i m ộ t c h n g trình dịch (compiler) M ộ t c h n g trình viết n g ô n ngữ b i ê n dịch g ọ i c h n g t r ì n h n g u n ( p r o g r a m source) c h ỉ c h y đ ợ c t r ê n m y t í n h sau k h i đ ã đ ợ c d ị c h sang n g ô n n g ữ m y B ả n d ị c h h o n c h ỉ n h c h n g t r ì n h n g u n c ó t h ể c h y đ ợ c t r ê n m y t í n h g ọ i c h n g t r ì n h k h ả t h i ( p r o g r a m e x e c u t a b l e ) C h n g t r ì n h k h ả t h i c ó t h ể c h y đ ợ c m k h ô n g c ầ n đ ế n c ó m ặ t t r ì n h biên dịch N g ô n n g ữ t h ô n g d ị c h Là ngôn ngữ d ù n g đ ể viết chương trình chạy m y tính v i đ i ề u k i ệ n t r c k h i thực h i ệ n m ộ t l ệ n h , p h ả i c ó m ộ t c h n g t r ì n h Lập trình nhập ghi kiểu HocSinh HĨT en, NamSinh, dạng: dịng 173 SoDT, Tất thơng có giải thích Ngun Hoang In ghi lên hình tin dịng, mồi thơng phẩn: hai tin Ví dụ: Nam 1984 8012345 8.5 Hoặc: Ho va ten Nam Nguyên sinh Diêm Hoang Nam 1984 So diên thoai 80ỉ 2345 tong két 8.5 Một cửa hàng chuyên 174 DiemTK bao gồm thành Maxtor, Corner bán lẻ4 loại đĩa cứng máy tính: Qỉtơntum, Seagate, Sau tuần số hoa đơn bán hàng n tờ, tờ có ghi loại đĩa cứng số lượng đĩa cứng loại Lập trình nhập liệu từ hoa đơn tính tổng số đĩa cứng bán cho {ừng loại Sau thực ngắt 16h, vẽ Hãy lập trình hình giá trị ghi bít AL mơ tả cấu trúc ghi AL diễn giải trên, nhập giải hình (Bạn thực gọi ngắt 16h lệnh liệu diễn đây: asm { mov ah, 2h; hít 16h; mov b, ai}; Giá trị để diễn giải vòng ỉ 75 ghi AL sau đố ghi mà nhập biến b Bạn lấy biến vào từ bàn phím lặp, bạn liên tục theo dõi tình trạng — c X s t; ĩ c b Nếu đặt tất bàn phím) Ì sL sR u Shiít phái dim bám Shi£t t i dam bám Ctĩi-Shiít í hai ben'.' đan? bím Alt-Shiít thai ben','can:: b í m Jĩỉ.m thái ScrollLcck TraiỊS thái XưmLock Trạm thái CípsLcck Trarẹ thái Insen 279 176 Viết chương trình bảng thống kê bao xuất, sốỈKỢìĩg, Viết chương kiểm kê hàng thơng đơn giá, thành tiền trình gồm hoa nhập danh kho tin: Tên với n mặt hàng, sách học sinh hàng mã hiệu, Lập nơi sân lớp điểm tống kết mơn tốn người in lên hình theo thứ tự điểm tốn cao xuống thấp Ví dụ: ỉ 77 Nguyễn Viết đất ỉ 78 chương hình Chương chữ tích, nhất, nhỏ 180 quản 181 nhập Nguyên Thái Hà quản lý địa có vi, hiển chương chính, cạnh nhập cạnh trình quản lý danh quán lý xà tên tìm lơ đất sách cán lý họ tên, số điện động trình chít lơ sở hữu sỏ hữu, tính có diện tích lớn theo chiều quản thoại Thông dài xâu họ lý danh tổng sách quan Các tin vé họ thông tên tên học sinh lớp Tììơnq tin kết Danh sách cấp phát động có hàm xếp danh trình chạy lớp trình quản lý danh họ tên, in họ tên, nhập sách danh trình tính điểm học sinh, sách, chương suốt thời gian diễn thêm điểm nước Phẩn điểm gồm hai cột: Tên nước số điểm, giảm tên nước số điểm dần Seagames Seagames chương in danh Mỗi lần nước thêm cửa sổ nơi thường Dịng lập ln thêm sách, Giả sử chương cộng trình đệm Viết thứ tự sơ điểm 280 tượng a, b tên chủ sách, sách theo tên, sau theo họ vá 182 đối a b, họ thị danh lý họ tên điểm theo sĩ số Viết cấp phát chương Mai Tuấn Sinh cho phép tin cần quản Viết lo nhật chu Viết chương 179 Đức Long Trần Thu Hà trình trình diện từ số điểm xun đỏ hiển ln hình lập thị ghi cho bànẹ xếp theo nơi nhập X I BÀI TẬP C H Ư Ơ N G l i Viết chương 183 trình gán trị cho biến Sơn in byte biến hai phần kiểu ký tự, in byte dó hai thành gồm hai số nguyên 184 số nguyên Viết chương byte không không dấu tử mảng chiều phẩn cấu trúc dấu trình nhập tên màu tiếng Anh từ bàn phím in tên màu lên hình với màu sau cho X U B À I T Ậ P C H Ư Ơ N G 12 *Viết chương trình DANHSACH.DAT 185 thơng tin có Gợi ý: Tạo cần ghi chèn Chép cuối vào sau ghi mới, bán chương tệp trình học sinh 186 Chép nốt thông Biết 187 Viết chương Khi chạy, tệp khơng điểm cịn thơng liệu kiểu /lốt mơ cách trình lại sang tổng trình kết thúc Viết chương Gợi ý: Đọc DANHSACH.DAT sang tệp thành iQ.ríián trinh NN lào trinh c dùng năm ghi lại COPY trình tệp tệp phụ, chép tệp DANHSACH.DAT, sau Khi chương DANHSACH.DAT từ tệp ghi khơng ghi đổi tên tệp phụ Tới vị trí thứ tì bỏ việc xoa CON lưu lại tệp FileCopy.CPP gõ lên bàn phím F6 nhấn sang Xong kết tên làm việc lệnh trình xoa ghì thứ n Nên tệp tin khác, tự mở tệp có tên lờ đĩa ghi lại tất CTRL-Z ghi hình chương phím Ghi tiếp trình dùng dể xoa tệp đĩa, làm việc chương trình tệp sai yêu cầu nhập tên tệp cần xoa từ bàn phím, xoa tệp thơng báo kết DOS: 189 làm ghi sinh, byte đánh dấu kết thúc xâu họ Viết chương 188 int, điểm tin Gợi ý: Dùng khơng tì cửa DANHSACH.DAT ghi vào tệp ho tên, năm sinh liệu kiểu thứ n ghi từ tệp c ũ sang Xoa tệp c ũ Đổi tên tệp thành *Viểt ghi tệp tệp vào chèn ghi DANHSACH.DAT 281 XUI CÁC BÀI TẬP NÂNG Chạy bước chương CAO trình sau đây, theo dõi giá trị biến k, m: ttinclude #include Uinclude Uinclude voidAO.BO; im CO; int n,k,m; main() ị clrscrị); randomize( ); ị tì = random(50) + m = random(4) 190 printf("\nTong 10; + 4; so %d hon " \nmoi soi," lan lay không "qua %d hon soi.", AO; delơy(500); } while (ỉkbhitO); getchị); return 0; ỉ im { ự CO (in) Ị printfị"\n\tAnh return thua roi!"); 0; ỉ k = (n > = m)? random(m)+ỉ: 282 ỉ; n, " m); n, printf("\tToi lay %d hon soi.", k); ti - = k; return ỉ; ỉ void Aị) { phntf("\nDen ỉ nót A: tì = %d", rĩ); if(n== l) ị printf("\n\tA: re ì am lost, Toi thua!"); tùm; ỉ ự (CO) BO; ì void BO ỉ printf("\nDen luot B: n = %d", ri); i f ( n = = J) Ị printf("\n\tB: re Ị am lost, Toi thua!"); tùm; ỉ if(C())A(); ì Đây trị chơi chơi ln phiên "Mariend nhặt sỏi cuối Bad", lấy lần không bi thua Phục 191 độ màu số 12h vụ số OCh ngắt đồ hoa, hình ghi DX cx Hãy lên dùng chứa hai phục thông lOh để ghi VGA người vụ để vẽ người hàm sáng trang hình chữ màu lên màn ghi AL C(), rồi" 640x480x16 chấm ghi BH số hiệu toa độ điểm, dừng báo "Anh thua chế độ đổ hoa đặt vào sỏi, q m hịn sỏi Ai Hãy đặt điểm sửa lại giá trị k để tạo tình Chế đố có n hịn hình, chứa nhật hình giá trị màu đỏ hình 283 M Ụ C LỤC Lời giới thiệu Lời nói đầu Chương C Á C K H Á I N I Ệ M c B Ả N ì C h n g t r ì n h ( p r o g r a m ) l i Ngôn ngữ lập trình I U T í n h đ ộ n g (portability) I V C c loại ngơn ngữ lập trình N g ô n n g ữ m y H ợ p n g ữ (assembly language) N g ô n n g ữ b i ê n d ị c h N g ô n n g ữ t h ô n g d ị c h N g ô n n g ữ bậc cao V c n g ô n ngữ c ù n g d ò n g l.c C + + 10 3.JAVA 10 c # l i Chương MƠI T R Ư Ờ N G LẬP TRÌNH c ì M ố i t r n g p h t t r i ể n tích hợp B O R L A N D C + + I D E 12 14 K h i đ ộ n g 14 X e m x é t l i c ấ u h ì n h 15 l i C c h sử d ụ n g c c t r ợ g i ú p 16 n i C c lệnh b ả n B O R L A N D C + + I D E 18 286 Ì Cửa sổ l m v i ệ c 18 C c l ệ n h soạn t h ả o 23 L u t ệ p 26 D ị c h c h n g t r ì n h 26 L i ê n k ế t c h n g t r ì n h 26 M a k e 26 B u i l d A l l 27 C h y c h n g t r ì n h 27 L m t h ế n o k h i c ó q u n h i ề u t ệ p đ ợ c mở? 27 I V V i ế t c h n g t r ì n h đ ầ u tay 27 Ì G h i đặt tên tệp 29 B i ê n d ị c h 30 K ế t t h ú c p h i ê n l m v i ệ c t r ê n B O R L A N D C + + I D E 31 V C â u t r ú c chung m ộ t c h n g t r ì n h c 31 Bài t o n 31 P h â n t í c h b i t o n 31 C i đ ặ t c h n g t r ì n h 32 Chương CÁC THÀNH PHẦN c B Ả N C Ủ A NGƠN N G Ữ C 37 ì M ộ t sô q u y ước 37 l i T ậ p ký tự 37 IU Bộ từ khóa 38 IV Tên (Identifier) 39 V K i ể u d ữ l i ệ u (data type) 40 K i ể u k ý t ự 41 K i ể u n g u y ê n 43 K i ể u d ấ u p h ẩ y đ ộ n g 44 VI Chuyên kiểu ngôn ngữ c C h u y ể n k i ể u n g ầ m 45 P h é p é p k i ể u 47 Chương B I Ể U THÚC ì Biên h ằ n g Ì B i ế n (variable) 287 45 49 49 49 H ằ n g (constant) l i C c toán t (operators) 50 56 T o n t m ộ t n g ô i 56 T o n t hai n g ô i 56 C c t o n t số h ọ c 56 C c t o n t so s n h l ô g í c 63 C c t o n tử đ ặ c b i ệ t k h c 65 H I T o n h n g (operand), biêu thức (expression) 67 Đ ị n h nghĩa 67 M ứ c ưu t i ê n c c t o n t b i ể u thức 69 M ộ t số h m t o n h ọ c t h n g d ù n g 71 Chương V À O RA c B Ả N 74 ì H m Scanf 74 C ú p h p 74 Scanf q u ả n lý v ù n g đ ệ m b n p h í m n h t h ế n o ? 77 H m f f l u s h 78 H m gets 78 li H m printf 79 C ú p h p 79 V í d ụ 81 I U I n d ữ liệu với chiều dài thay đ ổ i 82 IV Các h m xuất nhập ký tự 84 Chương C Á C CẤU T R Ú C ĐIÊU KHIÊN 86 ì C â u t r ú c p h â n n h n h 86 l i C â u t r ú c lựa chọn 88 I U Các càu trúc lập 93 288 C ấ u t r ú c f o r 93 C ấ u t r ú c w h i l e 97 C ấ u t r ú c d o w h i l e 99 C â u l ệ n h break loi C â u l ệ n h c o n t i n u e 102 Chương K I Ể U C O N TRỎ 103 ì C o n t r ỏ 103 Đ ị n h nghĩa 103 C c h g h i đ ị a c h ỉ b ộ n h 104 T ổ chức b ộ n h c ủ a m y t í n h 104 C o n t r ỏ g ầ n v c o n t r ỏ xa 106 l i K h a i b o t r ỏ 107 H I Ví d ụ 108 I V C c p h é p t o n t r ê n t r ỏ 109 Ì C c p h é p t ự t ă n g , t ự g i ả m 109 C c p h é p g n 109 V Cấp phát giải phóng nhớ 111 Ì C ấ p p h t b ộ n h cho c o n t r ỏ 111 G i ả i p h ó n g v ù n g n h đ ã cấp p h t 116 Chương H À M 118 ì Tiêu đ ề m ộ t h m 118 l i Phần thân h m 119 HI Gọi hàm 120 Ì T r u y ề n g i trị 120 T r u y ề n c o n t r ỏ 121 IV Cách viết h m 122 Ì D ữ l i ệ u t o n c ụ c 123 D ữ l i ệ u c ụ c b ộ 124 D ữ l i ệ u c h u n g 125 G i trị t r ả v ề 125 N ê n d ù n g l o i d ữ l i ệ u n o ? 130 V Nguyên m ẫ u h m (prototype) Ì K h i n i ệ m n g u y ê n m ẫ u h m 130 131 289 V ị trí đ ặ t n g u y ê n m ẫ u h m 131 D ị c h r i ê n g rẽ 133 V I C c ví d ụ h m 133 C c ví d ụ v ề t h a m s ô v g i trị t r ả v ề 133 C c ví d ụ v ề t r u y ề n d ữ l i ệ u 136 V I I C c loại biên t ầ m t c d ụ n g c h ú n g 139 B i ế n t o n cục 139 C c b i ế n t ự đ ộ n g 141 B i ế n t ĩ n h 142 V U I Con trỏ h m 143 Ì K h a i b o c o n t r ỏ h m 144 K h a i b o k i ể u c o n t r ỏ h m 144 T r u y ề n t r ỏ h m n h t h a m s ố n h đ ị a c h í trả v ề 148 Chương M Á N G ì Giới t h i ệ u c h u n g 151 151 Đ ị n h nghĩa 151 P h n l o i 151 Ư u n h ợ c đ i ể m c ấ u t r ú c m ả n g 152 li Khai báo mảng 153 Ì K h a i b o trực t i ế p 153 K h a i b o v k h i t o g i trị m ả n g 155 K h a i b o g i n t i ế p 158 H I T r u y cập p h ầ n t m ả n g 159 IV Duyệt mảng 160 D u y ệ t m ả n g m ộ t c h i ề u 160 D u y ệ t m ả n g hai c h i ề u 162 V M ả n g cấp p h t động 290 164 Ì K h a i b o c ấ p p h t m ả n g đ ộ n g m ộ t c h i ề u 165 K h a i b o v c ấ p p h t m ả n g đ ộ n g hai c h i ề u 166 V I T r u y ề n m ả n g qua danh sách t h a m sô h m 170 Ì Trường hợp m ả n g m ộ t chiều 170 T r n g h ợ p m ả n g hai c h i ề u 173 VU Xâu kỷ tự 175 Ì Sao c h é p x â u k ý t ự 176 M ộ t s ố v í d ụ 178 Chương 10 CẤU T R Ú C 181 ì Định nghĩa c â u t r ú c 181 li Khai báo câu trúc 181 Ì Khai b o b i ế n cấu trúc 181 K h a i b o k i ể u c ấ u t r ú c 182 C o n t r ỏ k i ể u c ấ u t r ú c 183 H I T r u y cập c c t h n h p h ầ n c â u t r ú c 184 I V K h i g n c c giá trị c â u t r ú c 186 V Ví d ụ c â u t r ú c 186 Phần k h a i b o t o n cục 186 C ấ u t r ú c d ữ l i ệ u 188 H m n h ậ p b ả n g h i 189 H m x u ấ t b ả n g h i 191 T h ê m b ả n g h i v o d a n h s c h 191 N h p d a n h s c h 192 Sao c h é p m ộ t c o n t r ỏ 193 T i m c c b ả n g h i theo t ê n 193 Danh s c h h ọ c sinh g i ỏ i 195 10 I n d a n h s c h 196 11 X ó a d a n h s c h 197 12 M e n u 198 13 H m m a i n 199 V I C â u t r ú c bít 200 Ì K h a i b o c ấ u t r ú c bít \ 200 291 V í d ụ v ề c ấ u t r ú c bít Chương li K I Ể U E N U M VÀ U N I O N ì K i ể u e n u m 201 206 206 Đ ị n h nghĩa 206 K h a i b o k i ê u e n u m 206 L ợ i í c h k i ể u e n u m 207 Đ i ể m bất l ợ i k i ể u e n u m 210 T ự t o k i ể u Boolean 213 l i K i ể u union 214 Đ ị n h nghĩa 214 K h a i b o 214 So s n h u n i o n struct 215 Chương 12 TỆP 216 ì T ổ n g q u a n t ệ p 216 l i C c h m truy xuất tệp cấp Ì 217 Ì Đ ặ c đ i ể m c c h m t r u y xuất t ệ p cấp Ì 217 T r u y x u ấ t t ệ p 218 T o t ệ p m đ ó n g t ệ p 220 X c đ ị n h vị trí t r ỏ đ ị n h vị 225 X c đ ị n h k í c h t h c t ệ p 225 V í d ụ 225 H I C c h m truy xuất tệp cấp 292 230 Ì Đ ặ c đ i ể m c c h m t r u y x u ấ t t ệ p cấp 230 M t ệ p 231 Đ ó n g t ệ p 231 Đ ọ c 231 G h i 232 D i c h u y ê n t r ỏ đ ị n h vị 232 X c đ ị n h vị trí h i ệ n t i t r ỏ đ ị n h vị 233 T h ứ l ỗ i 233 T h ứ h ế t t ệ p 233 10 Đ ổ i t ê n t ệ p 233 l i Xóa tệp 233 12 L i ê n h ệ g i ữ a hai c ấ p 233 13 T r l i đ ầ u t ệ p 234 14 L m v ù n g đ ệ m 234 PHỤ L Ụ C ì G ỡ r ỏ i c h n g t r ì n h 238 238 C h u ẩ n bị 238 Đ ặ t x ó a đ i ể m d n g 241 l i T r u y ề n tham sô v o h m b n g tham chiêu 242 H I C c h tổ chức c c t h viện dịch r i ê n g r ẽ 244 C c h tạo m ộ t t ệ p t h v i ệ n h m 244 T o d ự n t h v i ệ n 248 T o d ự n ứng d ụ n g c h u ẩ n 248 IV L ậ p trinh ngát 249 K h i n i ệ m ngắt 249 L ậ p t r ì n h g ọ i d ị c h v ụ x lý ngắt 251 BÀI TÁP 258 ì B i t ậ p c h n g Ì 258 l i Bài t ậ p c h n g 258 I U Bài t ậ p c h n g 259 I V Bài t ậ p c h n g 260 V Bài t ậ p c h n g 263 V I Bài t ậ p c h n g 264 V I I Bài t ậ p c h n g 268 V U I Bài tập chương 271 I X Bài t ậ p c h n g 275 293 X B i t ậ p c h n g 10 278 X I Bài tập c h n g l i 281 X U B i t ậ p c h n g 12 281 X U I C c b i t ậ p n â n g cao 282 Tài liệu thơm khảo 294 285 N H À XUẤT B Ả N H À NÔI - T Ố N G D U Y TÂN, Q U Ậ N H O À N KIÊM, H À N Ộ I Đ i ệ n t h o i : (Ớ4)8.252916 Fax: (04)9.289143 GIÁO TRÌNH NGƠN NGỮ LẬP TRÌNH c NHÀ X U Ấ T B Ả N H À N Ộ I - 2007 Chịu trách nhiệm xuất bản: NGUYỄN KHẮC OANH Biên tập: TRNG ĐÚC HÙNG Bìa: T R Ầ N QUANG Trình bày - K ỹ thuật vi tính : T H U H I Ể N - THU T H U Y Ê N Sửa in: ĐỒNG VÂN ... Muốn đưa vào chương trình ta phải sáng tạo g n cho n ó m ộ t c i t ê n T ấ t c c k i ể u , c c h ằ n g , c c b i ế n , c c h m , c c t r ỏ , c c t ệ p , c c c ấ u t r ú c đ ề u p h ả i c ó t ê n... thời ỈDE, giáo BORLAND Môi trường 2.0 trở BORLAND C+ + hướng ngữ c C+ + mơi C+ + Tuy trình c (phiên lại hỗ trợ chủ yếu cho lập trình lợi Đây ngữ c C++ c hay Microsoỷt Builder lập trình thuận... cho bạn yêu thích h? ?c hồn mềm thơng bạn ngơn giáo dụng h? ?c sinh ngữ lập trình khám phá s? ?c mạnh c Ngơn ng? ?C sinh lại c? ? ý đinh sâu vào phía sau dồng nhìn c? ?ch h? ?c ngơn thích muốn cho nuôi học