Lập trình C: Vòng lặp while

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
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:

while(Điều_kiện){
  Khối_lệnh;
}

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 vi đúng (true), tc là vòng lp s thc hin khi lnh vô hn ln
    printf("Lap trinh vien");  //câu lnh này s được thc hin vô hn ln
  }

  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 lnh này s được thc hin 10 ln
    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 nm trong khong 0<n<1000 thì s thc hin khi lnh trong cp {}
  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

» Tiếp: Vòng lặp do-while
« Trước: Vòng lặp for
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!