Bài giảng Các lệnh điều khiển và vòng lặp - Trần Anh Dũng

pdf 21 trang hapham 1390
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Các lệnh điều khiển và vòng lặp - Trần Anh Dũng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_cac_lenh_dieu_khien_va_vong_lap_tran_anh_dung.pdf

Nội dung text: Bài giảng Các lệnh điều khiển và vòng lặp - Trần Anh Dũng

  1. 2/2/2009 Chương V CÁC LỆNH ĐIỀU KHIỂN CBGD: ThS.Tr VÀ ầ n Anh D n Anh ũ VÒNG LẶP ng 1 LỆNH ĐƠN VÀ LỆNH PHỨC o Lệnh đơn là mộtbiểuthứcthuộcloạibấtkỳ theosaunólà mộtdấuchấmphẩy(;) Æ lệnh đơncònđượcgọilàlệnh biểuthức. CBGD: ThS.Tr o Lệnh phức bao hàm một hay nhiềulệnh đơn đượcbao ầ bên trong cặpdấu ngoặcnhọn({})vàđượcbộ dịch C D n Anh xem như là mộtlệnh đơn. ũ Các lệnh phứcnàythường được dùng trong các câu lệnh ng điềukhiển và vòng lặp củaCđể xác định lệnh thựcthicủa các lệnh điều khiểnnày. 2 CBGD: ThS.Trần Anh Dũng 1
  2. 2/2/2009 LỆNH ĐƠN VÀ LỆNH PHỨC CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 3 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 4 CBGD: ThS.Trần Anh Dũng 2
  3. 2/2/2009 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 5 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 6 CBGD: ThS.Trần Anh Dũng 3
  4. 2/2/2009 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 7 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 8 CBGD: ThS.Trần Anh Dũng 4
  5. 2/2/2009 LỆNH IF CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 9 LỆNH SWITCH - CASE Lệnh break cuốimỗicasesẽ chuyển điều khiểnchương trình ra khỏilệnh switch. nếu không có break, các lệnh tiếpngaysausẽ đượcthực thi dù các lệnh này có thể là của một case khác. CBGD: ThS.Tr ầ n Anh D n Anh ũ ng Lệnh default có thể không có trong 10 switch và nếucóthìcóthể nằmtùyý: đầu, giữahoặccuốicáccase. CBGD: ThS.Trần Anh Dũng 5
  6. 2/2/2009 LỆNH SWITCH - CASE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 11 LỆNH SWITCH - CASE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 12 CBGD: ThS.Trần Anh Dũng 6
  7. 2/2/2009 LỆNH WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 13 LỆNH WHILE Trong chương trình trên hàm randomize() có chứcnăng khởi động bộ phát số ngẫunhiênđể sử dụng hàm random(), hàm random() với đối số là n sẽ trả về mộttrị ngẫu nhiên trong CBGD: ThS.Tr khoảng 0 tớin-1 ầ n Anh D n Anh ũ ng 14 CBGD: ThS.Trần Anh Dũng 7
  8. 2/2/2009 LỆNH WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 15 LỆNH DO - WHILE While kiểmtrađiềukiệntrước, thực thi lệnh sau Æ ngay từđầumàđiềukiện đãsaithìlệnh của while không đượcthực thi. Do-while thực thi lệnh trước, kiểm tra điều kiệnsau. CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 16 CBGD: ThS.Trần Anh Dũng 8
  9. 2/2/2009 LỆNH DO - WHILE Chúýrằng mỗi phím mũi tên khi được ấn đều sinh ra hai ký tự: CBGD: ThS.Tr -Kýtựđầu luôn là ký tự có mã ASCII là 0 (tứckýtự NUL) -Kýtự thứ hai là các mã ASII tương ứng với ầ phím D n Anh ũ ng 17 LỆNH DO - WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 18 CBGD: ThS.Trần Anh Dũng 9
  10. 2/2/2009 LỆNH DO - WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 19 LỆNH DO - WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 20 CBGD: ThS.Trần Anh Dũng 10
  11. 2/2/2009 LỆNH DO - WHILE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 21 LỆNH FOR CBGD: ThS.Tr for (i = 1; i <= n; i++) ầ s += i; D n Anh ũ ng 22 CBGD: ThS.Trần Anh Dũng 11
  12. 2/2/2009 LỆNH FOR CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 23 LỆNH FOR CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 24 CBGD: ThS.Trần Anh Dũng 12
  13. 2/2/2009 LỆNH FOR CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 25 LỆNH BREAK CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 26 CBGD: ThS.Trần Anh Dũng 13
  14. 2/2/2009 LỆNH BREAK CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 27 LỆNH BREAK CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 28 CBGD: ThS.Trần Anh Dũng 14
  15. 2/2/2009 LỆNH CONTINUE Continue có tác dụng chuyển điều khiểnchương trình vềđầu vòng lặpchuẩnbị cho chu kỳ lặpmới, bỏ qua các lệnh còn lại nằm ngay sau lệnh continue trong chu kỳ lặphiện hành. Lệnh nànày chỉ được dùng trong các vòng lặp, để bỏ qua các CBGD: ThS.Tr lệnh không cầnthực thi trong vòng lặp trong các trường hợp đặcbiệtnàođó. ầ n Anh D n Anh ũ ng 29 LỆNH CONTINUE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 30 CBGD: ThS.Trần Anh Dũng 15
  16. 2/2/2009 LỆNH CONTINUE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 31 LỆNH CONTINUE CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 32 CBGD: ThS.Trần Anh Dũng 16
  17. 2/2/2009 LỆNH RETURN CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 33 LỆNH RETURN CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 34 CBGD: ThS.Trần Anh Dũng 17
  18. 2/2/2009 LỆNH GOTO Mặc dù không ủng hộ cho việclập trình có goto nhưng C vẫncó lệnh rẽ nhánh không điềukiện goto, lệnh này cho phép chuyển điều khiểnchương trình cho mộtlệnh nào đó. CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 35 LỆNH GOTO CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 36 CBGD: ThS.Trần Anh Dũng 18
  19. 2/2/2009 LỆNH RỖNG Trong C có khái niệmlệnh rỗng, lệnh này chỉ có mộtdấuchấm phẩy(;) ; Nó rất cần thiết trong nhiều trường hợp, ví dụ như đối với các vòng lặp, khi ta đặt các lệnh biểuthứcthực thi vào trong các biểuthứccủalệnh (nhưđặt CBGD: ThS.Tr vào trong biểuthức3 củavòngforchẳng hạn) thì ta không cầncóthêmlệnh thực thi làm thân cho chúng nữa, khi đónếu để trống, C sẽ hiểunhầmrằng ầ lệnh kế tiếpsẽ là thân của vòng lặp, do đóchỉ còn cách cho mộtlệnh rỗng D n Anh làm thân của chúng. ũ ng thân của vòng lặp lệnh kế tiếp 37 LỆNH RỖNG CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 38 CBGD: ThS.Trần Anh Dũng 19
  20. 2/2/2009 BÀI TẬP CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 39 BÀI TẬP CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 40 CBGD: ThS.Trần Anh Dũng 20
  21. 2/2/2009 BÀI TẬP CBGD: ThS.Tr ầ n Anh D n Anh ũ ng 41 CBGD: ThS.Trần Anh Dũng 21