intTypePromotion=1
ADSENSE

Bài giảng Nhập môn lập trình: Cấu trúc điều khiển - Trần Phước Tuấn

Chia sẻ: Năm Tháng Tĩnh Lặng | Ngày: | Loại File: PDF | Số trang:13

37
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong bài này sẽ giới thiệu đến người học một số cấu trúc điều khiển như: Lệnh rẽ nhánh if-else, lệnh rẽ nhiều nhánh switch, vòng lặp while-do white-for, các từ khóa break và continue. Mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Nhập môn lập trình: Cấu trúc điều khiển - Trần Phước Tuấn

  1. NMLT C U TRÚC I U KHI N Tr n Ph c Tu n tranphuoctuan.khoatoan.dhsp@gmail.com http://baigiang.tranphuoctuan.com C u trúc i u khi n L nh r nhá nhánh: if – else L nh r nhi u nhá nhánh: switch Vòng l p: while, do while, for Các t khóa: break và continue NH P MÔN L P TRÌNH 12/23/2009 2
  2. L nh r nhánh if Cú pháp: i u 0 if ( i u ki n) ki n S; 0 i u ki n: bi u th c cho k t qu S ; ph i S c t gi a c p ngo c n () S ph i là 1 câu l nh, n u nhi u h n 1 l nh, các l nh ph i c t gi a c p ngo c nh n {} – kh i l nh. nh. scanf("%i scanf("%i %i", %i", &a, &a, &b); &b); max max == a; a; if(b if(b > max) > max) max max == b; b; printf(“So printf(“So lonlon la: la: %i\n“, %i\n“, max); max); NH P MÔN L P TRÌNH 12/23/2009 3 uý N u t d u ch m ph y (;) ngay sau bi u th c i u ki n thì l nh S c a if xem nh “KHÔNG LÀM GÌ” printf(“Nhap printf(“Nhap mot mot so so nguyen: nguyen: "); "); scanf("%i", scanf("%i", &j); &j); if(j if(j >> 0); 0); printf(“%i printf(“%i la la so so duong“, duong“, j); j); Nhap Nhap mot mot so so nguyen: nguyen: -6 -6 -6 -6 là là so so duong duong NH P MÔN L P TRÌNH 12/23/2009 4
  3. L nh r nhánh if-else Cú pháp: i u 0 if ( i u ki n) ki n S; 0 Se else Se; S Ph n l nh else có th thêm vào trong câu l nh if ch th các l nh th c hi n khi i u ki n b ng 0 (FALSE). scanf("%i scanf("%i %i", %i", &a, &a, &b); &b); if(a if(a >> b) b) max max == a; a; else else max max == b; b; printf(“So printf(“So lonlon la: la: %i\n“, %i\n“, max); max); NH P MÔN L P TRÌNH 12/23/2009 5 Nhi u l nh if l ng nhau else k t n i v i l nh if g n nh t int int ii == 100; 100; if(i ii chap chap nhan nhan duoc if(i >> 0) 0) duoc if(i if(i >> 1000) 1000) printf("i printf("i qua qua lon\n"); lon\n"); else else printf("i printf("i chap chap nhan nhan duoc\n"); duoc\n"); int int ii == -20; -20; if(i if(i > 0) {{ > 0) ii la la so so am am if(i > 1000) if(i > 1000) printf("i printf("i qua qua lon\n"); lon\n"); }} else else printf("i printf("i la la so so am\n"); am\n"); NH P MÔN L P TRÌNH 12/23/2009 6
  4. C u trúc nhi u ch n l a – switch Cú pháp: switch (bi u th c) { case gt1: S1; [break;] case gt2: S2; [break;] ... case gtn: Sn; [break [break;] ;] default: Se; } Bi u th c: cho k t qu S NGUYÊN; ph i c t gi a c p ngo c n () Si : dãy các l nh. NH P MÔN L P TRÌNH 12/23/2009 7 Ví d l nh switch switch(c) switch(c) {{ case case 'a': 'a': case case 'A': 'A': printf(“Dien printf(“Dien tich tich == %.2f\n", %.2f\n", rr ** rr ** pi); pi); break; break; case case 'c': 'c': case case 'C': 'C': printf(“Chu printf(“Chu vi vi == %.2f\n", %.2f\n", 22 ** rr ** pi); pi); break; break; case case 'q': 'q': printf(“Thoat\n"); printf(“Thoat\n"); break; break; default: default: printf(“Chon printf(“Chon khong khong hop hop le\n"); le\n"); }} NH P MÔN L P TRÌNH 12/23/2009 8
  5. M ts u ý – switch N u không có giá tr nào kh p, các l nh trong ph n default s c th c thi; và n u không có default c ng không x y ra l i. L nh break r t quan tr ng. ii == 33 float float f; f; ii == 22 ii == 3; 3; ii == 11 switch(f) switch(f) {{ case case 2: 2: switch(i) switch(i) {{ .... .... case case 3: 3: printf("i printf("i == 3\n"); 3\n"); case 2: case 2: printf("i = 2\n"); printf("i = 2\n"); switch(i) switch(i) {{ case 1: printf("i case 1: printf("i == 1\n"); 1\n"); case case 22 ** j: j: }} .... .... NH P MÔN L P TRÌNH 12/23/2009 9 C u trúc nhi u ch n l a – switch gt1 bi u default th c S1; gt2 break; S2; break; … Se; NH P MÔN L P TRÌNH 12/23/2009 10
  6. Ví d khác – switch //Doan //Doan chuong chuong trinh trinh doc doc so so 0..9 0..9 switch(so) switch(so) {{ case case 0: 0: printf(“khong\n"); printf(“khong\n"); case case 1: 1: printf(“mot\n"); printf(“mot\n"); case case 2: 2: printf(“hai\n"); printf(“hai\n"); case case 3: 3: printf(“ba"); printf(“ba"); case case 4: 4: printf(“bon"); printf(“bon"); case case 5: 5: printf(“nam"); printf(“nam"); case case 6: 6: printf(“sau"); printf(“sau"); case case 7: 7: printf(“bay"); printf(“bay"); case case 8: 8: printf(“tam"); printf(“tam"); case case 9: 9: printf(“chin"); printf(“chin"); }} NH P MÔN L P TRÌNH 12/23/2009 11 L nh l p while Cú pháp: while ( i u ki n) i u 0 S; ki n i u ki n: bi u th c cho k t qu S ; ph i c t gi a c p ngo c n () 0 S S ph i là 1 câu l nh, n u nhi u h n 1 l nh, các l nh ph i c t gi a c p ngo c nh n {} – kh i l nh. int while(j int jj == 5; while(j 5;>> 0) 0) {{ jj == 55 printf("j printf("j == %i\n", %i\n", j); j); jj == 44 while(j while(j >> 0) 0) j--; j--; jj == 33 printf("j printf("j == %i\n", %i\n", j--); j--); }} jj == 22 jj == 11 while th c hi n l nh S ít nh t 0 l n NH P MÔN L P TRÌNH 12/23/2009 12
  7. u ý d u ch m ph y ; D u ‘;’ t ngay sau bi u th c i u ki n ng ngh a v i l nh S là r ng. int int jj == 5; 5; Ch ong trình b p while(j không thoát c while(j >> 0); 0); printf("j printf("j == %i\n", %i\n", j--); j--); ôi khi ng i l p trình c ý s d ng l nh r ng int int c, c, j; j; while(scanf("%i", while(scanf("%i", &j) &j) != != 1) 1) while((c t d u ‘;’ while((c == getch()) getch()) !=!= 27) 27) ;; t thúc while không có S NH P MÔN L P TRÌNH 12/23/2009 13 L nh l p do while Cú pháp: do S { S; i u 0 }while ( i u ki n); ki n i u ki n: bi u th c cho k t qu S ; ph i c t gi a c p ngo c n () 0 NH P MÔN L P TRÌNH 12/23/2009 14
  8. Ví d do while int start int jj == 5; 5; start jj == 55 printf("start\n"); jj == 44 printf("start\n"); do jj == 33 do printf("j jj == 22 printf("j == %i\n", %i\n", j--); j--); while(j jj == 11 while(j >> 0); 0); printf("stop\n"); stop stop printf("stop\n"); NH P MÔN L P TRÌNH 12/23/2009 15 Ví d do while int int jj == -10; -10; printf("start\n"); printf("start\n"); start start do do {{ jj == -10 -10 printf("j printf("j == %i\n", %i\n", j); j); stop stop j--; j--; }} while(j while(j >> 0); 0); printf("stop\n"); printf("stop\n"); do while th c hi n l nh S ít nh t 1 l n NH P MÔN L P TRÌNH 12/23/2009 16
  9. L nh l p for L nh l p for d n h t cá các thà thành ph n c a vòng l p và vào trong m t câu l nh. pháp: Cú phá for (kh i ng; i u ki n l p; i u khi n) S; kh i i u 0 i u S ng ki n khi n 0 NH P MÔN L P TRÌNH 12/23/2009 17 L nh l p for – Ví d jj == 55 int int j;j; jj == 44 jj == 33 for(j = 5; for(j for(j j > 0; = 5; j== >5; j--) { for(j 5;0;jj j--)0; {j--) >> 0; j--) jj == 22 printf("j printf("j = %i = %i ", printf("j ", j); j); == %i\n", j); jj == 11 printf("j %i\n", j); printf("%s\n", ((j%2)==0)?“chan":“le"); printf("%s\n", ((j%2)==0)?“chan":“le"); }} jj == 55 le le jj == 44 chan chan jj == 33 le le jj == 22 chan chan jj == 11 le le NH P MÔN L P TRÌNH 12/23/2009 18
  10. c l p trong for C không gi i h n l nc ab c l p trong for. #include #include int int main(void) main(void) {{ double double angle; angle; for(angle for(angle == 0.0; 0.0; angle angle
  11. break T khóa break ch th vi c thoát ngay l p t c kh i c u trúc i u khi n. u scanf tr 1, C n th n khi s d ng! ch ng trình thoát kh i vòng l p for for(;;) for(;;) {{ printf(“nhap printf(“nhap mm tt so so nguyen: nguyen: "); "); if(scanf("%i", if(scanf("%i", &j) &j) == == 1) 1) break; break; printf(“khong printf(“khong hop hop le, le, nhap nhap lai\n“ lai\n“ }} printf(“j nhap nhap mot mot so so nguyen nguyen :: int int printf(“j == %i\n", %i\n", j); j); khong khong hop hop le, le, nhap nhap lai lai nhap nhap mot so nguyen: 16 mot so nguyen: 16 jj == 16 16 NH P MÔN L P TRÌNH 12/23/2009 21 continue T khóa continue ch th c nhanh nb cl pk , b t k phía sau ó còn nhi u l nh c n l p. H n ch s d ng! u j chia h t cho 3 thì b qua l nh in j for(j jj == 11 for(j == 1; 1; jj
  12. Tóm l c else: r nhá if else: nhánh switch r nhi u nhánh v i i u ki n là giá tr c a bi u th c nguyên while, do while, for – 3 lo i vòng l p c a C break continue NH P MÔN L P TRÌNH 12/23/2009 23 M t s bài t p 1. Nh p a, b, c. Tì Tìm max. Phá Phát tri n nhi u s 2. Gi i ph ng trì trình ax+b=0 3. Gi i ph ng trình ax2+bx+c=0 4. Gi i h ph ng trình: a1x+b1y=c1 a2x+b2y=c2 5. Nh p vàvào i m trung bì bình, hãy x p lo i h c t p 6. Tính ti n i n (nh p vào s kw) 7. D ng tam giác (nh p các c nh a, b,c ) 8. Nh p vào 1 tháng, cho bi t tháng này thu c quý m y? 9. Vi t ch ng trìtrình nh p và vào thá tháng, in ra s ngà ngày c a nó nó 10. Vi t ch ng trìtrình nh p vàvào 2 s x, y và và 1 trong 4 toá toán t +, -, *, /. Sau ó th c hi n phép tính (n u y = 0 thì thông báo không chia c) NH P MÔN L P TRÌNH 12/23/2009 24
  13. 1. Vi t hà hàm: 1. Truy n và vào ký t và s n. In ra n ký t ó 2. In hcn cá các d u * có có kích th c m*n 3. In hcn r ng cá các d u * có có kích th c m*n 4. In tam giá giác cân cá các d u * có có chi u cao h 5. In tam giá giác r ng cá các d u * có có chi u cao h 2. Tính cá các t ng sau: 1. S=1+2+…+n 2. S = 2 + 4 + … + 2.n ( t ng cá các s ch n
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2