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

Tài liệu lập trình C

337 1,1K 18
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Định dạng
Số trang 337
Dung lượng 1,28 MB

Nội dung

Tài liệu lập trình C

PH M VĂN T (Ch biên) NGUY N HI U CƯ NG L P T R Ì NH H Ư NG ð I T Ư NG V À C ++ NHÀ XU T B N GIAO THÔNG V N T I L I NĨI ð U L p trình hư ng ñ i tư ng C ++ m t mơn h c quan tr ng đ i v i sinh viên ngành Công ngh thông tin m t s ngành h c khác L p trình hư ng ñ i tư ng phương pháp l p trình ch đ o hi n cơng nghi p ph n m m tư tư ng hư ng ñ i tư ng ñư c áp d ng h u h t ngôn ng l p trình hi n đ i C++ , Visual C++ , C#, Java Phương pháp l p trình ph bi n nh t nh ng năm 70 80 c a th k trư c l p trình c u trúc ðó phương pháp t ch c, phân chia chương trình thành hàm, th t c Thông qua ngôn ng Pascal C, ña s nh ng ngư i làm Tin h c ñã quen bi t v i phương pháp l p trình Tuy nhiên phương pháp l p trình d n b c l nhi u h n ch Phương pháp l p trình hư ng ñ i tư ng ñã kh c ph c ñư c nh ng h n ch c a l p trình c u trúc m m t giai ño n phát tri n m i công nghi p ph n m m L p trình hư ng ñ i tư ng d a vi c t ch c chương trình thành l p Khác v i hàm th t c, l p m t ñơn v bao g m c d li u phương th c x lý Vì v y l p có th mơ t th c th m t cách chân th c, ñ y ñ ch t ch Ngơn ng C đ i năm 1973 v i m c đích ban đ u ñ vi t h ñi u hành Unix máy tính mini PDP Sau C đư c s d ng r ng rãi nhi u lo i máy tính khác tr thành m t ngơn ng l p trình c u trúc r t ñư c ưa chu ng ð ñưa C vào th gi i hư ng hư ng ñ i tư ng, năm 1980 B Stroustrup ñã cho ñ i m t ngôn ng m i g i C++, m t s phát tri n m nh m c a ngôn ng C Ngôn ng C++ m t ngơn ng lai, t c cho phép t ch c chương trình theo c l p hàm Có th nói C++ thúc đ y ngơn ng C v n r t thuy t ph c ñi vào th gi i l p trình hư ng đ i tư ng C++ tr thành ngơn ng hư ng đ i tư ng m nh ñư c s d ng r ng rãi nh t t nh ng năm 1990 Giáo trình s trình b y m t cách h th ng khái ni m c a l p trình hư ng ñ i tư ng ñư c cài ñ t C++ l p, ñ i tư ng, s th a k , tính tương ng b i, khn hình kh m i xây d ng, s d ng hàm như: ñ i tham chi u, ñ i m c ñ nh, hàm trùng tên, hàm toán t Cu i m i chương ñ u có t p nh ng m c ñ khác ñ ñ c gi t rèn luy n thêm Các v n ñ ph c t p thư ng địi h i ph i phân tích thi t k tương ñ i ñ y ñ trư c có th vi t chương trình Tuy giáo trình khơng t p trung vào phân tích thi t k , ph l c gi i thi u v n t t v phương pháp phân tích, thi t k hư ng ñ i tư ng Cu n sách g m chương ph l c Chương hư ng d n cách làm vi c v i ph n m m TC++ 3.0 ñ th nghi m chương trình, trình b y sơ lư c v phương pháp l p trình gi i thi u m t s m r ng ñơn gi n c a C++ Chương trình b y kh m i vi c xây d ng s d ng hàm C++ bi n tham chi u, đ i có ki u tham chi u, đ i có giá tr m c đ nh, hàm tr c n, hàm trùng tên, hàm toán t Chương nói v m t khái ni m trung tâm c a l p trình hư ng ñ i tư ng Chương trình bày chi ti t v đ nh nghĩa ch ng tốn t Chương trình b y v n đ t o d ng, chép, hu tư ng v n đ khác có liên quan b ñ i Chương trình b y m t khái ni m quan tr ng t o nên kh m nh c a l p trình hư ng đ i tư ng vi c phát tri n, m r ng ph n m m, kh th a k c a l p Chương trình b y m t khái ni m quan tr ng khác l p trình hư ng đ i tư ng tính tương ng b i phương th c o Chương nói v vi c t ch c vào/ra C++ Chương trình b y v khn hình (template) C++ Ph chúng l c trình b y phép tốn C ++ th t ưu tiên c a Ph l c trình b y v b ng mã ASCII mã quét c a ký t Ph l c t p h p m t s câu h i tr c nghi m ñáp án ñ b n ñ c t ki m tra l i ki n th c Ph l c trình b y m t cách ng n g n phương pháp phân tích, thi t k l p trình hư ng ñ i tư ng Cu i danh m c m t s thu t ng chuyên ngành s d ng giáo trình v trí tham chi u đ đ c gi ti n tra c u, m t s tài li u tham kh o N i dung c a giáo trình đư c PGS TS Ph m Văn t biên so n d a n n cu n “C++ & l p trình hư ng đ i tư ng” c a tác gi , có m t s b sung s a ch a ThS Nguy n Hi u Cư ng biên so n chương 4, ph l c 3, t p cu i m i chương hi u ch nh giáo trình Khi vi t giáo trình chúng tơi h t s c c g ng đ giáo trình đư c hồn ch nh, song ch c khơng tránh kh i thi u sót, v y chúng tơi r t mong nh n đư c s góp ý c a ñ c gi Các tác gi Chương CÁC KHÁI NI M CƠ B N Chương trình b y v n đ sau: - Cách s d ng ph n m m Turbo C++ 3.0 - Tóm lư c v phương pháp l p trình c u trúc l p trình hư ng ñ i tư ng - Nh ng m r ng c a C++ so v i C § LÀM VI C V I TURBO C++ 3.0 Các ví d giáo trình đư c vi t th c hi n môi trư ng Turbo C++ (TC++ phiên b n 3.0) Sau cài ñ t (gi s vào thư m c C:\TC) thư m c TC s g m có thư m c sau: C:\TC\BGI ch a t p BGI CHR C:\TC\BIN ch a t p chương trình (đi EXE) TC, TCC, TLIB, TLINK, … C:\TC\INCLUDE ch a t p tiêu đ H C:\TC\LIB ch a t p LIB, OBJ ð vào mơi trư ng c a TC++ ch c n th c hi n t p chương trình TC.EXE thư m c C:\TC\BIN Sau vào môi trư ng TC++ th y vùng so n th o chương trình h menu c a TC++ (g n gi ng h menu quen thu c c a Turbo C) H menu c a TC++ g m menu: File, Edit, Search, Run, Compile, Debug, Project, Options, Window, Help Cách so n th o, biên d ch ch y chương trình TC++ gi ng TC, ngo i tr ñi m sau: T p chương trình h so n th o c a TC++ có m c đ nh CPP cịn TC t p chương trình có C Trong TC++ có th th c hi n c chương trình C C++ § NGƠN NG C VÀ C++ Có th nói C++ s m r ng đáng k c a C ði u có nghĩa nh ng kh m i c a C++, m i kh năng, m i khái ni m C ñ u dùng ñư c C++ Vì C++ s d ng g n tồn b khái ni m, ñ nh nghĩa, ki u d li u, c u trúc l nh, hàm công c khác c a C, nên s thu n l i n u ñ c gi ñã bi t s d ng tương đ i thành th o ngơn ng C Giáo trình ch y u t p trung vào khái ni m l p trình hư ng đ i tư ng ngơn ng C++, s khơng trình bày l i ch đ b n ngôn ng C ki u d li u, c u trúc ñi u n, … Vì C++ s m r ng c a C, nên b n thân m t chương trình C ñã chương trình C++ Tuy nhiên Trình biên d ch TC++ yêu c u m i hàm chu n dùng chương trình đ u ph i khai báo nguyên m u b ng m t câu l nh #include, u khơng b t bu c đ i v i Trình biên d ch c a TC Trong C ta có th dùng m t hàm chu n mà b qua câu l nh #include ñ khai báo nguyên m u c a hàm ñư c dùng ði u không báo l i biên d ch, có th d n đ n k t qu sai ch y chương trình Ví d biên d ch chương trình sau mơi trư ng C s khơng g p dịng c nh báo (warning) thông báo l i (error) Nhưng ch y s nh n ñư c k t qu sai #include void main() { float a,b,c,p,s; printf("\nNhap a, b, c "); scanf("%f%f%f",&a,&b,&c); p=(a+b+c)/2; s= sqrt(p*(p-a)*(p-b)*(p-c)); printf("\nDien tich = %0.2f",s); getch(); } N u biên d ch chương trình TC++ s nh n đư c thông báo l i sau: Error: Funtion ‘sqrt’ should have a prototype Error: Funtion ‘getch’ should have a prototype ð bi n chương trình thành m t chương trình C++ c n: + ð t tên chương trình v i CPP + Thêm hai câu l nh #include ñ khai báo nguyên m u cho hàm sqrt getch: #include #include § L P TRÌNH C U TRÚC VÀ L P TRÌNH HƯ NG ð I TƯ NG 3.1 Phương pháp l p trình c u trúc Tư tư ng c a l p trình c u trúc t ch c chương trình thành chương trình Trong PASCAL có hai ki u chương trình th t c (procedure) hàm (fuction) Trong C ch có m t lo i chương trình hàm Hàm m t đơn v chương trình đ c l p dùng ñ th c hi n m t ph n vi c như: Nh p s li u, in k t qu hay th c hi n m t s tính tốn Hàm c n có đ i bi n, m ng c c b dùng riêng cho hàm Vi c trao ñ i d li u gi a hàm th c hi n thông qua đ i bi n tồn b Các ngôn ng C, PASCAL ngôn ng cho phép tri n khai phương pháp l p trình c u trúc M t chương trình c u trúc g m c u trúc d li u (như bi n, m ng, b n ghi, …) hàm, th t c Nhi m v c a vi c t ch c thi t k chương trình c u trúc t ch c chương trình thành hàm, th t c Ví d xét yêu c u sau: Vi t chương trình nh p to đ (x,y) c a m t d y ñi m, sau tìm m t c p m cách xa nh t Trên tư tư ng c a l p trình c u trúc có th t ch c chương trình sau: + S d ng hai m ng th c tồn b x y đ ch a to ñ d y ñi m + Xây d ng hai hàm: Hàm nhapsl dùng ñ nh p to ñ n ñi m, hàm có m t ñ i bi n nguyên n ñư c khai báo sau: void nhapsl(int n); Hàm do_dai dùng ñ tính đ dài đo n th ng qua ñi m có ch s i j , đư c khai báo sau: float do_dai(int i, int j); Chương trình C cho tốn đư c vi t sau: #include #include #include float x[100], y[100]; float do_dai(int i, int j) { return sqrt(pow(x[i]-x[j],2)+pow(y[i]-y[j],2)); } void nhapsl(int n) { int i; for (i=1;i

Ngày đăng: 16/08/2012, 09:25

TỪ KHÓA LIÊN QUAN

w