Danh mục

Bài giảng Ngôn ngữ lập trình C - Chương 6: Hàm và cấu trúc chương trình

Số trang: 34      Loại file: ppt      Dung lượng: 350.00 KB      Lượt xem: 11      Lượt tải: 0    
Hoai.2512

Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Nối tiếp nội dung chương 5 của "Bài giảng Ngôn ngữ lập trình C" chương 6 sẽ tiếp tục giới thiệu đến bạn đọc về hàm và cấu trúc chương trình, quy tắc xây dựng một hàm, các khái niệm liên quan đến hàm, cách xây dựng hàm, con trỏ và địa chỉ. Hy vọng, đây là tài liệu tham khảo hữu ích dành cho các bạn.
Nội dung trích xuất từ tài liệu:
Bài giảng Ngôn ngữ lập trình C - Chương 6: Hàm và cấu trúc chương trình CHƯƠNGVI HÀMVÀCẤUTRÚCCHƯƠNGTRÌNHI. Hàm1. Quytắcxâydựngmộthàm: Hàm có thể xem là một đơn vị độc lập của chương trình. Các hàm có vai trò ngang nhau, vì vậykhôngchophépxâydựngmộthàmbêntrong mộthàmkhác. Dòngđầutiên(củamộthàm)chứacácthôngtinvề hàm: Kiểugiátrịcủahàm(nếuhàmcógiátrị) Tênhàm Danhsáchcácđốisố(nếucó)Cácdòngtiếptheodùngđểkhaibáokiểugiátrịcủađốisố.Vàbắtbuộcphảikhaibáokiểugiátrịchotấtcảcácđốisố.Tiéptheolàthânhàm.Thânhàmlànộidungchínhcủahàmnóbắtđầubằngdấu{vàkếtthúc}Trongthânhàmcóthểdùng1hoặcnhiềulệnhreturnhoặccóthểkhôngdùng.Vàcóthểđặtchúngởbấtkỳchỗnàonếuthấythíchhợp.Cúphápchungcủalệnhreturn return([Biểuthức]); Giátrịcủabiểuthứctrongngoặcsẽđược gánchohàm.2. Quytắchoạtđộngcủahàm Cáchgọihàm: tên_hàm([Danhsáchthamsốthực]); Chúý: Số tham số thực phải bằng với số tham sốhìnhthức(đối)vàmỗithamsốthựcphải cócùngkiểuvớigiátrịnhưkiểugiátrịcủa đốitươngứngcủanó. Về nguyên tắc mọi hàm cần được khái báo trước khi sử dụng nó. Nó hoàn toàn giốngvớiviệckhaibáomộtbiến.Vídụ: Viếtchươngtrìnhtìmsốlớnnhấtvànhỏnhất củatừngcộttrongmatrận,cósửdụnghàmtìm max,tìmmin. #includestdio.h intmax(a,b) inta,b; { intm; m=a>b?a:b; return(m); }intmin(a,b)inta,b;{intm;m=a for(i=0;ifor(j=0;j3.Cáckháiniệmliênquanđếnhàm: Tênhàm Kiểugiátrịcủahàm Đốihaythamsốhìnhthức Thânhàm Kháibáohàm Lờigọihàm Thamsốthực4. Cáchxâydựnghàm [type]tên_hàm([Danhsáchđốisố]) [Khaibáokiểugiátrịchotấtcảcácđối] { [Cáckhaibáokiểugiátrịchocácbiếncụcbộvà các hàmnósửdụng] [return([Biểuthức]);] } Chúý: Khi xây dựng hàm cần nắm vững những qui định vềmốiquanhệgiữa:thamsốthựcvàthamsốhình thức(đối)cũngnhưcácđốitrongthâncủahàm Đốivớihàmkhôngchogiátrịthìchúngta khôngcầnkhaibáokiểugiátrịcủanó. Đối với các hàm có giá trị mà ta quên khôngkhaibáokiểugiátrịcủanó,thìmáy sẽ coi hàm đó có giá trị nguyên. Như vậy đối với hàm có gái trị kiểu nguyên thì khôngcầnkhaibáokiểugiátrịchochúng. Khigặplệnhreturncóchứabiểuthức,thì giá trị của biểu thức bao giờ cũng được chuyểnvềtheokiểugiátrịcủahàmtrước khinóđượcgánchohàm. Nguyêntắchoạtđộngcủathamsốthực,cácđốivàcác biếncụcbộ Dođốivàbiếncụcbộđềucóphạmvihoạtđộngtrong cùngmộthàmnên đốivàbiếncụcbộcầncótênkhác nhau. Đốivàbiếncụcbộ đềulàbiếntự động.Chúng được cungcấpbộnhớkhihàm đượckhởi độngvàchúngsẽ lậptứcbiếnmấtkhimáyrakhỏihàm.Nhưvậy,không thểmanggiátrịcủađốirakhỏihàm.Điềunàycónghĩa là không thể sử dụng đối để làm thay đổi giá trị của bấtkỳmộtđạilượngnàoởngoàihàm. Khimộthàm đượcgọitới,việc đầutiênlàgáitrịcủa cácthamsốthực đượcgánchocác đối.Như vậy,các đốichínhlàbảnsaocủacácthamsốthực.Hàmchỉlàm vcệctrêncác đối,tứclàchỉlàmviệctrêncácbảnsao này.Cácđốicótểbịbiến đổinhưngcácthamsốthực (cácbảnchính)khônghềbịthayđổiII. Contrỏvàđịachỉ1. Điachỉ Liênquanđếnmộtbiếntađãcócáckháiniệm: Tênbiến Kiểugiátrịcủabiến Giátrịcủabiến Khikhaibáomộtbiếnthìmáysẽcấpphátcho biếnmộtvùngnhớcósốbytebằngvới độlớn củakiểuđó. Vídụ: Kiểuintlà2byte Kiểufloatlà4byte Chúngtacũngcóthểhiểu:Địachỉcủabiếnlàsốthứtựcủabyte đầutiêntrongmộtdãycácbyteliêntiếpnhaumàmáydànhchobiến. Cần chú ý rằng: Địa chỉ của biến là mộ sốnguyên nhưng không được đánh đồng nó với cácsốnguyênthôngthườngtrongcácphéptính Phéptoán &x chotađịachỉcủabiếnx2. Contrỏ Contrỏlàmộtbiếndùng đểchứa địachỉ.Vìcó nhiều loại địa chỉ nên cũng có bấy nhiêu kiểu contrỏtươngứng. Vídụ: Contrỏkiểuintdùng đểchứa địachỉcác biếnkiểuint. Cũng như biến thì con trỏ cũng cần phải đựoc khaibáotrướckhisửdụng. Cúphápkhaibáo: type*tên_con_trỏ Vídụ: intx,y,*px,*py Toántử:&và*làcác ...

Tài liệu được xem nhiều: