»-(¯`v´¯)-»Diễn Đàn Trường Công Nghệ Thông Tin Thái Nguyên»-(¯`v´¯)-»

.:hix lâu không làm web.nên giờ lười làm quá.dùng tạm cái Forum việt vậy.chủ yếu là chất lượng Những bài viết thôi đúng không.thật THà là nói hết không giấu diếm nhưng học xong cấm nghịch bậy..http://guichonguoiay.net.tf web mình đó RỖI VÀO CHơi Ha.hjhj:.
 
Trang ChínhPortalCalendarGalleryTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập
Thông Tin Cực Sock Cho Những Ai Nghiện Game Audition Của Thái Nguyên.Sau Một Thời Gian Tìm Hiểu Mà Nhờ Mấy Anh Ở forum ClbGame Mình Đã Cài THành Công Bản Audition Offline THái Nguyên.Sắp Tới Mình Sẽ Đưa Lên Online.Các Bạn Muốn Chơi Game Và Muốn Sở Hữu Những Bộ Đồ Đẹp Nhất Không Còn Chần Chừ Gì Nữa Mà Không Click Chuột Để Truy Cập Trang Web wWw.AuTn.tk Để Download Và Thưởng thức

Share | 
 

 CHƯƠNG 4 : HÀM CHƯƠNG TRÌNH VÀ CẤU TRÚC CHƯƠNG TRÌNH

Go down 
Tác giảThông điệp
Admin
Admin


Tổng số bài gửi : 136
Join date : 13/03/2010

Bài gửiTiêu đề: CHƯƠNG 4 : HÀM CHƯƠNG TRÌNH VÀ CẤU TRÚC CHƯƠNG TRÌNH   Wed Mar 17, 2010 8:37 pm

CHƯƠNG 4 : HÀM CHƯƠNG TRÌNH VÀ CẤU TRÚC CHƯƠNG TRÌNH



Chương trình viết bằng ngôn ngữ C gồm 1 dãy các hàm trong đó có 1 hàm chính là main và chương trình bắt đầu từ main.

4.1/ Khái niệm :

- Hàm là đoạn chương trình thực hiện trọn vẹn một công việc nhất định.

- Hàm chia cắt việc lớn bằng nhiều việc nhỏ. Nó giúp cho chương trình sáng sủa, dễ sửa, nhất là đối với các chương trình lớn.

4.2/ Khai báo hàm :

< Tên hàm > (< danh sách các đối số>)

< Khai báo biến >

{

< Khai báo thêm các biến >

< Các câu lệnh >

}

- Trong đó :

+ Tên hàm : buộc phải có.

+ Danh sách các đối số : không bắt buộc. Có hay không tuỳ theo chúng ta định dùng hàm đó làm gì.

+ Khai báo biến : Nếu Danh sách các đối số mà có thì phần này buộc phải có. Còn nếu không thì ngược lại có thể bỏ qua.

+ Phần trong { } : là thân hàm. Dấu { } là bắt buộc đối với mọi hàm.

+ < Khai báo tham biến > : ngay sau { và gọi là biến cục bộ dành riêng cho hàm sử dụng.

+ đối số luôn luôn truyền theo trị ( không thay đổi giá trị).

*Ví dụ : Hàm tính giai thừa : S = x 1 /1! + x 2 /2! + ....+ x n / n!

Cách 1 :

#Include <stdio.h>

#Include <conio.h>

float giaithua ( int n)

{

int i ;float KQ ;

for ( KQ=1,i =1 ; i<=n ; i ++ )

KQ = KQ * i ;

return KQ ;

}

Void main ( ) /* khai báo biến toàn cục nếu có */

{

int n ;

printf ( " Nhập n = " ); scanf ( " %d ", &n);

printf ( " %d giai thừa là % f ", n, giaithua (n) );

getch ();

}

Cách 2 :

#Include <stdio.h>

# Include<conio.h>

/*Khai báo prototype*/ mục đích hàm đặt ở đâu cũng được không cần trước hàm gọi

float giaithua ( int n );

void main ()

{

}

/* Chi tiết hàm giai thừa */

float giaithua ( int n)

{ ... return KQ };

Chú ý : - Kiểu của hàm cùng kiểu giá trị cần trả về.

- Các hàm độc lập, không được lồng nhau.

- Kiểu void tên hàm () : không cần trả về giá trị nào, hiểu ngầm là trả về int.

- ở cách 1 : hàm ở trên không được gọi hàm dười.

- ở cách 2 : các hàm gọi được lẫn nhau.

4.3 / Phạm vi của biến :

- Chẳng hạn trong ví dụ trên : biến n trong hàm main ( ) là cục bộ của main() chỉ có tác dụng trong hàm main() => trong hàm giai thừa có thẻ khai báo biến n trùng biến n của hàm main ( ) nhưng khác nhau và chỉ tồn tại trong 1 hàm.

Ví dụ : float giaithua (m);

{

int n ; float KQ = 1.0;

for ( n = 1; n<= m ; ++n )....

4.4 / Ðệ quy : giống như trong Pascal : hàm gọi đến chính nó.

* Ví dụ : Tính giai thừa :

giaithua ( n );

int n ;

{

if ( n = 0 ) return ( i ) ;

else return (giaithua ( n - 1 )*n );

}

- Chương trình sử dụng đệ quy thì dễ hiểu nhưng không tiết kiệm được bộ nhớ, không nhanh hơn.

4.5/ So sánh Lệnh trong Pascal và trong lập trình ngôn ngữ C.

- Giống nhau : + Cả Pascal và C đều có chương trình con.

- Khác nhau :

Pascal Ngôn ngữ C

Có thủ tục Chỉ có hàm

Có hàm Hàm có thể khai báo kiểu void ( không trả về giá trị nào cả, giống như thủ tục của Pascal

- Khai báo hàm

function Tên hàm (<danh sách biến) < kiểu hàm>;

< Khai báo các biến cục bộ>

Begin

< Các câu lệnh>

end; < Kiểu> tên hàm ( < danh sách các biến>)

{

< khai báo các biến cục bộ>

Các câu lệnh

}

Khai báo biến

<tên biến >: < kiểu biến>;

Ví dụ : Function max ( a, b : integer ) : integer

Begin

if a > b then max = a

Else max = b ;

End.

Trả về giá trị bằng phép gán max = giá trị ( trong đó max là tên hàm ). Khai báo biến

< kiểu biến> < tên biến >;

Ví dụ : int max ( a, b )

{

If ( a > b ) return ( a );

else return ( b );

}

- Trả về giá trị bằng câu lệnh return ( giá trị)

Kiểu tham số

+ Tham biến : truyền theo địa chỉ

+ Tham trị : truyền theo giá trị.

Tham biến trong Pascal

Procedure swap ( var x, y : real );

Var temp : real ;

Begin

Temp : = x ; x : = y ; y : = temp;

End.

- gọi hàm : swap ( a, b) Kiểu tham số

+ Chỉ có tham trị.

+ Muốn có tham biến bằng cách đưa con trỏ hình thức tham biến trong C.

Tham biến trong C

Void swap ( float *x, float * y )

{

float temp ;

temp = * x ; *x = * y ; * y = temp ;

}

swap ( &s, &b )



vns3curity(HCE)
Về Đầu Trang Go down
Xem lý lịch thành viên http://itcu.forumvi.com
 
CHƯƠNG 4 : HÀM CHƯƠNG TRÌNH VÀ CẤU TRÚC CHƯƠNG TRÌNH
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
»-(¯`v´¯)-»Diễn Đàn Trường Công Nghệ Thông Tin Thái Nguyên»-(¯`v´¯)-» :: Phận Làm Trai Gõ Phím Bình Thiên Hạ--Chí Anh Hùng Click Chuột Định Giang Sơn :: Ngôn Ngữ lập trình C-
Chuyển đến