Trong ngôn ngữ lập trình C, các lệnh cấu trúc là các lệnh được sử dụng để điều khiển luồng thực thi của chương trình. Chúng cho phép bạn thực hiện các phân nhánh (branches), vòng lặp (loops), và các hàm (functions) trong chương trình của bạn. Dưới đây là một số lệnh cấu trúc phổ biến trong C:
LẬP TRÌNH CĂN BẢN CÁC LỆNH CÓ CẤU TRÚC Giảng viên: TS.Trương Quốc Bảo NỘI DUNG CỦA CHƯƠNG Khối lệnh trong C Cấu trúc rẽ nhánh Cấu trúc lựa chọn Cấu trúc vòng lặp Các câu lệnh “đặc biệt” Thursday, January 15, 2015 Lập trình căn bản 2 KHỐI LỆNH TRONG C (1) Là 1 dãy các khai báo cùng với các câu lệnh nằm trong cặp dấu ngoặc móc { và } { S1 S1; S1; S2 S2; S2; … Sn Sn; … Sn; } Thursday, January 15, 2015 Lập trình căn bản 3 KHỐI LỆNH TRONG C (2) 1 khối lệnh có thể chứa nhiều khối lệnh khác gọi là khối lệnh lồng nhau (số khối lồng nhau là không hạn chế) 1 khối lệnh có thể được dùng như 1 lệnh đơn { 1 phát biểu N phát biểu } Thursday, January 15, 2015 Lập trình căn bản 4 TẦM VỰC (PHẠM VI) CỦA BIẾN Có thể khai báo các biến cùng tên trong các khối Nếu một biến được khai báo bên ngoài khối lệnh và không trùng tên với biến bên trong khối lệnh thì nó cũng dùng được bên trong khối Một khối lệnh con có thể sử dụng các biến bên ngoài, nhưng điều ngược lại không đúng Thursday, January 15, 2015 Lập trình căn bản 5 TẦM VỰC (PHẠM VI) CỦA BIẾN Các biến sẽ bị tác động hay thay đổi giá trị trong phạm vi khối lệnh mà nó khai báo Các khối lệnh chứa khối lệnh khác (khối lệnh bên ngoài) và có biến trùng với biến trong khối lệnh bên trong, khi đó: Khi thay đổi giá trị của biến trong khối lệnh bên ngoài, giá trị biến sẽ tác động lên khối lệnh bên trong, Khi thay đổi giá trị của biến trong khối lệnh bên trong sẽ không tác động lên khối lệnh bên ngoài Thursday, January 15, 2015 Lập trình căn bản 6 CẤU TRÚC RẼ NHÁNH - IF Statement được thực hiện nếu boolean_expression có giá trị đúng (true), !=0 Begin Boolean False expression End True Thursday, January 15, 2015 StatLeậmp trìenhncătnsbản 7 CẤU TRÚC RẼ NHÁNH - IF #include #include int main (){ float d; printf("Nhap diem = "); scanf("%f",&d); if (d >= 5.0 ) printf(“Ban da dau mon nay”); getch(); return 0; } Thursday, January 15, 2015 Lập trình căn bản 8 CẤU TRÚC RẼ NHÁNH ĐẦY ĐỦ - IF… ELSE boolean_expression !=0 => thực hiện Statement1, boolean_expression ==0 => thực hiện Statement2 Begin Boolean False expression Statement2 Thursday, January 15, 2015 True End 9 StateLậmp treìnnh ctă1n bản CẤU TRÚC RẼ NHÁNH ĐẦY ĐỦ - IF… ELSE #include #include int main (){ float a; printf("Nhap a = "); scanf("%f",&a); if (a >=5.0 ) printf(“Ban da dau mon nay”); else printf(“Rot roi! Ban can dang ky hoc lai!”); getch(); return 0; } Thursday, January 15, 2015 Lập trình căn bản 10 VÍ DỤ SWITCH…CASE (2) Thursday, January 15, 2015 Lập trình căn bản In ra số ngày của 1 tháng 18 CẤU TRÚC LẶP Cho phép lặp lại nhiều lần một công việc nào đó Cấu trúc lặp trong NN C bao gồm: for while do-while Thursday, January 15, 2015 Lập trình căn bản 19 VÒNG LẶP FOR (1) Cú for (Biểu thức 1; biểu thức 2; biểu thức 3) pháp ; Thứ tự thực hiện: B1: Tính giá trị biểu thức 1 B2: Tính giá trị biểu thức 2 Nếu giá trị biểu thức 2 là sai (==0) => thoát khỏi for Nếu giá trị biểu thức 2 là đúng (!=0) => thực hiện B3: Tính giá trị biểu thức 3 Thursday,rJồanuiaryq15u, 2a015y lại B2 Lập trình căn bản 20