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’);