Lập trình C: Vòng lặp while
Giải phóng thời gian, khai phóng năng lực
Tương tự như vòng lặp for, vòng lặp while cũng được dùng để thực hiện lặp đi lặp lại nhiều lần một khối lệnh. Vòng lặp while còn gọi là vòng lặp không xác định (vô hạn) vì thông thường ta sẽ không xác định được số lần thực hiện khối lệnh trong nó.
Cú pháp:
Quy cách thực thi:
Vòng lặp while sẽ kiểm tra Điều_kiện trước:
+ Nếu sai thì thoát khỏi vòng lặp mà không thực hiện Khối_lệnh.
+ Nếu đúng thì thực hiện Khối_lệnh, thực hiện xong lại quay lên kiểm tra Điều_kiện, chu trình thực hiện cứ như vậy cho đến khi Điều_kiện sai.
Ví dụ 1: Lặp vô hạn
Phần điều kiện của vòng lặp là số 1 (hoặc một số bất kỳ khác 0) có nghĩa rằng điều kiện là luôn luôn đúng, tức khối lệnh của nó sẽ được thực hiện vô hạn lần.
#include<stdio.h> main(){ while(1){ //1 tương ứng với đúng (true), tức là vòng lặp sẽ thực hiện khối lệnh vô hạn lần printf("Lap trinh vien"); //câu lệnh này sẽ được thực hiện vô hạn lần } return 0; }
Ví dụ 2: Lặp hữu hạn
Ví dụ sau sử dụng một biến đếm n để thực hiện khối lệnh với một số lần mong muốn, điều này có nghĩa ta cũng có thể biến while trở thành vòng lặp xác định.
#include<stdio.h> main(){ int n=0; while(n<10){ printf("\nLap trinh vien - Programmer - Developer"); //câu lệnh này sẽ được thực hiện 10 lần n++; } return 0; }
Ví dụ 3: Kiểm soát dữ liệu đầu vào
Còn đây là ví dụ áp dụng while để kiểm soát giá trị nhập vào phải thỏa mãn điều kiện đặt ra (validate). Trong trường hợp này bạn sẽ phải nhập một số nguyên n nằm trong khoảng (0<n<100), nếu không hệ thống sẽ bắt bạn nhập lại và sẽ lặp đến khi nào bạn nhập đúng theo yêu cầu thì thôi.
#include<stdio.h> main(){ int n; printf("\nMoi ban nhap mot so n (0<n<1000): "); scanf("%d", &n); //trong khi n không nằm trong khoảng 0<n<1000 thì sẽ thực hiện khối lệnh trong cặp {} while(n<=0 || n>=1000){ printf("\nMoi ban nhap lai n: "); scanf("%d", &n); } printf("\nSo ban vua nhap la: %d",n); return 0; }
Ví dụ 4: Menu chọn
#include<stdio.h> int main(){ int option; printf("\n=====MENU===="); printf("\n1. Lua chon 1"); printf("\n2. Lua chon 2"); printf("\n3. Lua chon 3"); printf("\n4. Lua chon 4"); printf("\n5. Lua chon 5"); printf("\n6. Thoat"); printf("\n============="); while(1){ printf("\nMoi ban chon 1 lua chon: "); scanf("%d",&option); switch(option){ case 1: printf("\nBan da chon Lua chon 1"); break; case 2: printf("\nBan da chon Lua chon 2"); break; case 3: printf("\nBan da chon Lua chon 3"); break; case 4: printf("\nBan da chon Lua chon 4"); break; case 5: printf("\nBan da chon Lua chon 5"); break; case 6: printf("\nBan da chon Thoat"); return 0; } } return 0; }
Xem thêm
Giải phóng thời gian, khai phóng năng lực