intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình C: Chương 5 - Các toán tử điều khiển

Chia sẻ: _ _ | Ngày: | Loại File: PPT | Số trang:33

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

Bài giảng "Lập trình C: Chương 5 - Các toán tử điều khiển" được biên soạn với nội dung tìm hiểu về các toán tử điều khiển bao gồm: Toán tử IF; Toán tử switch; Toán tử goto và nhãn; Toán tử while. Mời các bạn cũng tham khảo bài giảng tại đây!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình C: Chương 5 - Các toán tử điều khiển

  1. CHƯƠNG V CÁC TOÁN TỬ ĐIỀU KHIỂN I. Toán tử IF Cú pháp: Dạng 1: if (Biểu thức điều kiện) ; Dạng 2: if (Biểu thức điều kiện) ; else  ;
  2. Chức năng: ­ Nếu Biểu thức điều kiện có giá trị bằng 1 thì thực  hiện Câu lệnh 1. ­ Ngược lại thì thực hiện Câu lệnh 2 (Dạng 2),  hoặc thực hiện các lệnh sau if (Dạng 1) Ví dụ: Giải phương trình bậc hai: #include "stdio.h" #include "math.h" void main() { int a,b,c; float x1,x2,del; clrscr(); printf("\nNhap he so a = "); scanf("%d",&a);
  3. printf("\nNhap he so b = "); scanf("%d",&b); printf("\nNhap he so c = "); scanf("%d",&c); del=pow(b,2)­4*a*c; if (del >= 0) { printf("Phuong trinh co nghiem"); x1=(b­sqrt(del))/2*a; x2=(b+sqrt(del))/2*a; printf("\n x1 = %6.2f",x1); printf("\n x2 = %6.2f",x2); } else printf("\n Phuong trinh vo nghiem"); getch(); }
  4. Chú ý: ­ Hoàn toàn giống các ngôn ngữ lập trình khác, thì  C  cũng  cho  phép  sử  dụng  các  toán  tử  if  lồng  nhau. Ví dụ: if (a>b)  if (b>c) z = b else  z = c ...
  5. ­ Một dạng khác của kiểu toán tử if lồng nhau: if (Biểu thức điều kiện 1) ; else if (biểu thức điều kiện 2) ; . . . else if (biểu thức điều kiện n­1) ; else  ;
  6. Ví dụ: Viết chương trình nhập vào một số từ 1 đến 7 và cho  hiểu thị thư trong tuần. #include "stdio.h" void main() { int t; clrscr(); printf("Nhap so thu tu cua ngay trong tuan t = "); scanf("%d",&t); if (t==1) printf("\nNgay chu nhat"); else if (t==2)
  7. printf("\nNgay thu hai"); else if (t==3) printf("\nNgay thu ba"); else if (t==4) printf("\nNgay thu tu"); else if (t==5) printf("\nNgay thu nam"); else if (t==6) printf("\nNgay thu sau"); else printf("\nNgay thu bay"); getch(); }
  8. II. Toán tử switch Về ý tưởng gần giống toán tử Case .. Of của  Pascal. Toán tử switch cho phép căn cứ vào giá  trị của một biểu thức nguyên để chọn một trong  nhiểu cách nhảy.
  9. Cú pháp: swith (Biểu thức) { case n1: ; case n2: .  . case nk: [default: ;] }
  10. Trong đó: ­ ni là các số nguyên, hằng ký tự hoặc biểu thức  hằng, các ni cần có các giá trị khác nhau. ­ Đoạn chương trình đặt giữa { và } chính là thân  của switch. ­ default là một thành phần không bắt buộc ­ Thứ tự của ni và default không theo trật tự nào  cả. ­ Sự  hoạt  động  của  switch  tuỳ  thuộc  vào  giá  trị  của biểu thức. ­ Khi biểu thức có giá trị ni thì nhảy tới câu lệnh ni  ­ Khi biểu thức khác các giá trị ni thì nhảy đến câu  lệnh có nhãn default (nếu có), hoặc ra khỏi switch.
  11. ­ Ra khỏi switch: Máy sẽ ra khỏi switch khi gặp lệnh break hoặc gặp dấu  ngoặc đống cuối cùng (})của switch. Có thể dùng lệnh goto trong thân switch để nhảy đến một  lệnh ngoài thân switch Nếu switch nằm trong một hàm nào thì có thể sử dụng lệnh  return để ra khỏi hàm đó. Chú ý: Khi  máy  nhảy  tới  một  lệnh  nào  thì  sự  hoạt  động tiếp theo của nó sẽ phụ thuộc vào  các  lệnh  đứng  sau  câu  lệnh  này.Tức  là  nếu  máy nhảy tới câu lệnh có nhãn case ni thì nó  có  thể  thực  hiện  tất  cả  các  lệnh  sau  đó  cho  tới khi gặp lệnh break, goto hoặc return.  
  12. Ví dụ: Viết lại chương trình ở ví dụ trên bằng cách sử dụng switch. #include "stdio.h" void main() { int ch,t; tt: clrscr(); printf("Nhap so thu tu cua ngay trong tuan t = "); scanf("%d",&t); switch (t) { case 1:printf("\nNgay chu nhat"); break; case 2:printf("\nNgay thu hai"); break; case 3:printf("\nNgay thu ba");
  13. break; case 4:printf("\nNgay thu tu"); break; case 5:printf("\nNgay thu nam"); break; case 6:printf("\nNgay thu sau"); break; case 7:printf("\nNgay thu bay"); break; default:printf("\nNhap lai"); getch(); goto tt; } printf("\nTiep tuc khong 1/0 ch = "); scanf("%d",&ch); if (ch==1) goto tt; }
  14. III. Toán tử goto và nhãn ­ Nhãn có cùng dạng như tên biến và đi liền  sau nó là dấu (:), nhãn có thể gán cho bất  kỳ câu lệnh nào trong chương trình Ví dụ: tt:clrscr(); /* tt là nhãn của câu lệnh xoá màn  hình clrscr()*/ ­ Toán tử goto có dạng: goto nhãn; Khi gặp câu lệnh này mãy sẽ nhảy tới câu  lệnh co nhãn viết sau từ khoá goto
  15. Chú ý: ­ Câu  lệnh  goto  và  nhãn  cần  nằm  trong  một  hàm. Điều đó nói lên rằng: Toán tử goto chỉ  cho phép nhảy từ vị trí này sang vị trí khác  trong  thân  của  hàm.  Không  dùng  nhảy  từ  hàm này sang hàm khác. ­ Không cho phép dùng toán tử goto  để nhảy  từ  ngoài  vào  trong  một  khối  lệnh,  nhưng  điều ngược lại thì có thể thực hiện được. IV. Toán tử for Cú pháp: for (biểu thức 1; biểu thức 2; biểu thức 3)
  16. Chức năng: Cho  thực  hiện  câu  lệnh  sau  for  với  số  lần  định trước bởi các biểu thức trong for. Trong đó: ­  Biểu thức 1: Là một toán tử gán  để tạo giá  trị khởi đầu cho biến điều khiển. ­ Biểu thức 2: Là một quan hệ logic biểu thị  điều kiện để tiếp tục chương trình. ­  Biểu  thức  3:  Là  một  toán  tử  gán  đùng  để  thay đổi giá trị của biến điều khiển ­  Trong  ba  Biểu  thức  trong  ngoặc  for  có  thể  thiểu  không  đủ  ba  hoặc  nhiều  hơn  ba  biểu 
  17. Chú ý: Khi  biểu  thức  2  vắng  mặt  thì  nó  luôn  luôn  được xem là đúng. Trong trường hợp này việc  ra khỏi vòng lặp for cần  được thực hiện nhờ  lệnh break, goto hoặc return. Trong dấu ngoặc tròn sau từ khoá for gồm ba  phần  phân  cách  nhau  bởi  dấu  ;.  Trong  mỗi  phần không những có thể viết một biểu thức  mà  còn  có  quyền  được  viết  một  dãy  biểu  thức phân cách nhau bởi dấu phẩy (,). Khi  đó  các  biểu  thức  trong  mỗi  phần  sẽ  được  xác  định lần lượt từ trái sang phải. Tính  đúng sai  của  dãy  biểu  thức  trong  phần  thứ  hai  được  hiểu là tính  đúng sai của biểu thức cuối cùng  trong dãy này.
  18.   Bên trong thân của một toán tử for có thể sử  dụng các toán tử for khác. Tức là các vòng for  lồng nhau.   Khi  gặp  câu  lệnh  break  trong  thân  for,  máy  sẽ ra khỏi toán tử for sâu nhất chứa câu lệnh  này   Trong  thân  for  có  thể  sử  dụng  toán  tử  goto  để nháy ra khỏi vòng for đến một vị trí bất kỳ  nào đó. Cũng có thể dùng return trong thân for  để trở về một hàm nào đó.
  19. Ví dụ 1:  Nhập và Sắp xếp mảng một chiều theo chiều tăng  dần. #include "stdio.h" main() { int i,j,temp; int a[10]; clrscr(); for (i=0;i
  20. for (i=0;i
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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