Cẩu trúc do while

Một phần của tài liệu Giáo trình Cơ sở lập trình: Phần 1 (Trang 67 - 69)

X , In ra kiểu số nguyín viết dưới dạng sổ hexa (cơ số 16)

2.3.4.2. Cẩu trúc do while

Khâc với cấu trúc while ở trín phải kiểm tra biểu thức điều kiện trước khi thực hiện khối lệnh có thể lăm cho khối lệnh khơng thực hiện

một lần năo thì có nhiều băi tôn cần phải thực hiện khối lệnh ít nhất lă một lần chừng năo biểu thức điều kiện còn thoả mên. Với trường hợp năy

chúng ta sử dụng cấu trúc lặp do... while

Cú phâp

do{

// khối lệnh

}while(dieu_kien);

Trong đó:

do vă while lă hai từ khóa

dieu kien lă biểu thức điều kiện nhận giâ trị nguyín hoặc thực

Sự hoạt động

Bước 1 : Thực hiện khối lệnh

Bước 2: Xâc định giâ trị của biểu thức điều kiện

Bước 3: Nếu biểu thức điều kiện có giâ trị đúng (khâc 0) thì trình

biín dịch sẽ quay lại bước 2. Neu biểu thức điều kiện có giâ trị sai (bằng

0) thì trình biín dịch sẽ thôt khỏi cấu trúc lặp do... while.

Ta thấy cấu trúc do... while có sự khâc biệt với cấu trúc while, đó lă khối lệnh sẽ được thực hiện trước khi xâc định giâ frị của biểu thức điều kiện, vì vậy khối lệnh ln được thực hiện ít nhất lă một lần.

Ví dụ 2.3.12: Viết chương trình cho phĩp người dùng nhập một kí tự

từ băn phím in ra mê của kí tự cho đến khi người dùng nhập phím Enter để thoât.

#include <stdio.h> #include <conio.h> const ESC =13; int main() { int ch; do {

printf("\nHay nhap mot ki tu:"); ch = getch();

printf("\n Ki tu vua nhap la %c co ma %d",ch,ch); }while(ch!=ESC);

getch(); return 1;

}

Ví dụ 2.3.13: Nhập văo sổ n. in ra măn hình kết quă của n!

//include <stdio.h> //include <conio.h> void main() { int n; int i =1; int result =1;

printf("\n Nhap so nguyín n:"); scanf("%d",&n); printf("\n"); do { result *= i; i++; }while(i<n+l); printf(" %d!=%d",n,result); getch(); }

Một ứng dụng rất hay của do...while() đó lă sử dụng để viết một

menu đơn giăn trong đó u cầu người dùng có thực hiện tiếp nữa không

vă cho nhập tiếp khi mă người dùng u cầu lă có.

char ch;

do{

// than chng trinh

printf(“Co nhap tiep khong? (C/K)”); c=getche();

} while(ch=‘c’|| ch==’C’);

Một phần của tài liệu Giáo trình Cơ sở lập trình: Phần 1 (Trang 67 - 69)

Tải bản đầy đủ (PDF)

(77 trang)