Xem mẫu

  1. KỸ THUẬT LẬP TRÌNH C BÀI 4: CẤU TRÚC ĐIỀU KHIỂN TRONG C Hoàng Quốc Tuấn tuanhq@fpt.edu.vn http://hoangquoctuanpro.wordpress.com
  2. Nội dung I. Câu lệnh if II. Câu lệnh switch III. Vòng lặp for IV. Vòng lặp while V. Vòng lặp do...while VI. Câu lệnh goto VII.Bài tập minh họa 2
  3. I – Câu lệnh if Câu lệnh if Câu lệnh if...else 3
  4. 1. Câu lệnh if Cú pháp: if (biểu_thức_logic) Nếu biểu thức lôgic cho kết quả khác 0 (đúng) thì thực hiện khối lệnh. Nếu biểu thức lôgic cho kết quả là 0 (sai) thì khối lệnh sẽ không được thực hiện. Khối lệnh có thể là lệnh đơn hoặc lệnh kép 4
  5. 1. Câu lệnh if #include void main() { float number; printf(“Nhap mot so trong khoang tu 0 den 10: ”); scanf(“%f”, &number); if (number > 5) { printf(“So ban vua nhap lon hon 5.\n”); } printf(“%f la so ban nhap.”, number); } 5
  6. 2. Câu lệnh if...else Cú pháp: if (biểu_thức_logic) else Nếu biểu thức cho kết quả đúng (khác 0) thì thực hiện khối lệnh 1, ngược lại thì thực hiện khối lệnh 2. 6
  7. 2. Câu lệnh if...else #include void main() { float number; printf(“Nhap mot so trong khoang tu 0 den 10: ”); scanf(“%f”, &number); if (number > 5) { printf (“So ban vua nhap lon hon 5.\n”); } else { printf (“So ban vua nhap nho hon hoac bang 5.\n”); } printf(“Gia tri ban vua nhap la %f ”, number); } 7
  8. 2. Câu lệnh if...else Lưu ý: Biểu thức logic phải được đặt trong cặp dấu ngoặc tròn (...) Khối lệnh dù chỉ có một lệnh thì cũng nên được đặt trong cặp dấu ngoặc nhọn {..} bao quanh lệnh. Trong khối lệnh có thể có câu lệnh if/if...else tạo ra cấu trúc if lồng nhau. 8
  9. II – Câu lệnh switch Cú pháp: switch (biểu_thức) { case n1: các câu lệnh case n2: các câu lệnh ... case nk: các câu lệnh [default: các câu lệnh] } Trong đó: ni là các hằng số nguyên hoặc ký tự. 9
  10. II – Câu lệnh switch Giá trị của biểu thức sẽ được so khớp với các ni để quyết định hướng thực hiện của chương trình: − Nếu khớp với ni nào thì chương trình sẽ đến thực hiện các câu lệnh từ case ni đó cho đến khi nào kết thúc switch hoăc gặp câu lệnh break. − Trong trường hợp không khớp với ni nào thì chương trình sẽ thực hiện các lệnh sau default (nếu có). 10
  11. #include void main() { char chon; printf(“\nChon A, B hoac C de xac dinh:”); printf(“\nA] Dien the”); printf(“\nB] Dong dien”); printf(“\nC] Dien tro”); printf(“\n Lua chon cua ban => ”); scanf(“%c”, &chon); switch(chon) { case ‘A’: printf(“U = I * R”); break; case ‘B’: printf(“I = U / R”); break; case ‘C’: printf(“R = U / I”); break; default: printf(“khong co chon lua”); } } 11
  12. #include void main() { char diem; printf(“\nNhap vao diem: ”); scanf(“%d”,&diem); switch() { case 0: case 1: case 2: case 3: printf(“Kem”); break; case 4: printf(“Yeu”); break; case 5: case 6: printf(“Trung binh”); break; case 7: case 8: printf(“Kha”); break; case 9: case 10: printf(“Gioi”); break; default: printf(“Nhap sai”); } } 12
  13. III – Vòng lặp for Cú pháp: for (khởi_tạo; điều_kiện; cập_nhật) Hoạt động: Bước 1:Thực hiện các lệnh trong phần khởi_tạo Bước 2: Kiểm tra biểu thức điều_kiện, nếu đúng thì xuống Bước 3, nếu sai thì kết thúc vòng lặp. Bước 3: Thực hiện các lệnh trong khối_lệnh, sau đó thực hiện các lệnh trong phần cập_nhật, rồi quay về Bước 2. 13
  14. III – Vòng lặp for for (khởi_tạo; điều_kiện; cập_nhật) khởi_tạo cập_nhật đúng điều_kiện khối_lệnh sai 14
  15. III – Vòng lặp for Ghi chú: Các phần khởi_đầu, cập_nhật có thể có nhiều lệnh và các lệnh cách nhau bằng dấu phẩy. Các thành phần trong vòng lặp for có thể được bỏ qua nhưng hai dấu hai chấm không thể thiếu trong cấu trúc của lòng lặp for. Phần cập_nhật thông thường có tác dụng nhằm đưa điều_kiện tiến dần về sai để kết thúc vòng lặp. Một vòng lặp phải được kết thúc tại một thời điểm nào đó. Vòng lặp mà lặp vô hạn là vòng lặp bị sai. Vòng lặp for được xem như một câu lệnh. 15
  16. #include void main() { int i; // bien dem for(i = 1; i
  17. IV – Vòng lặp while Cú pháp: while () Hoạt động: B1: Kiểm tra biểu thức điều_kiện, nếu đúng thì qua B2, nếu sai thì kết thúc vòng lặp. B2: Thực hiện khối_lệnh, quay về B1. 17
  18. IV – Vòng lặp while while () đúng điều_kiện khối_lệnh sai 18
  19. #include void main() { int i = 1; // bien dem while(i
  20. IV – Vòng lặp while Một số lưu ý: Các câu lệnh của thân vồng lặp while có thể được thực hiện nhiều lần, một lần hoặc thậm chí không được thực hiện lần nào (khi điều kiện lặp sai ngay ban đầu). Vòng lặp while cũng được xem như một câu lệnh . 20
nguon tai.lieu . vn