Vòng lặp for c#
Vòng lặp for
nhằm tạo ra một cấu trúc, thi hành khối lệnh nào đó một một số lần chỉ định.
Cú pháp của lệnh như sau:
for ( khởi_tạo; điều_kiện; cập_nhật ) { //Các câu lệnh trong khối }
Câu lệnh này sẽ hoạt động như sau.
- 1 Đầu tiên nó thi hành câu lệnh tại
khởi_tạo
, thường chỗ này ta khởi tạo bộ đếm vòng lặp nhưint i = 1;
j = 10;
- 2 Kiểm tra biểu thức logic
điều_kiện
, nếutrue
thì bắt đầu thi hành khối lệnh{ ... }
sau đó sang 3 , nếufalse
thì thoát lặp - 3 Thi hành biểu thức
cập_nhật
, chỗ này ta thường dùng để tăng - giảm bộ đếm nhưi++;
, thi hành xong thì quay lại 2
for (int i = 8;i <=10;i++) { Console.WriteLine("Số i = " + i); } // Số i = 8 // Số i = 9 // Số i = 10
Trong câu lệnh for
bạn có thể không có
khởi_tạo
, điều_kiện
, cập_nhật
nhưng dấu ;
ngăn cách chúng vẫn phải có,
và quy trình các bước của lệnh for ở trên sẽ bỏ qua bước đó mà thực hiện bước tiếp theo luôn.
Ví dụ, thiếu khởi_tạo
và cập_nhật
sẽ bỏ qua bước 1
và 3, ví dụ: In ra các số chẵn từ 10 đến 20
int j = 10; for (;j <=20;) { Console.WriteLine("Số j = " + j); j += 2; } // Số j = 10 // Số j = 12 // Số j = 14 // Số j = 16 // Số j = 18 // Số j = 20
Khi viết thiếu các thành phần như trên hết sức lưu ý để đảm bảo khởi tạo và lặp số lần hữu hãn, nếu không dễ dần tới vòng lặp vộ tận, ví dụ đây là vòng lặp vô tận.
for (; ;) {}
Hoặc
for (; ;);
Vòng lặp while c#
Cú pháp như sau
while (điều_kiện) { //Lặp nếu điều_kiện bằng true }
Câu lệnh này đầu tiên kiểm tra điều_kiện
nếu bằng true
thi hành khối lệnh nếu false
thoát vòng lặp, thi hành xong lại kiểm tra lại điều_kiện
và nếu vẫn bằng true
lại thi hành
lại khối lệnh ... cứ thế cho đến khi điều_kiện
là false
int i = 8; while (i <= 10) { Console.WriteLine("Số i = " + i); i++; } // Số i = 8 // Số i = 9 // Số i = 10
Cần lưu ý, viết vòng lặp đảm bảm lặp số lần hữu hạn (điều_kiện bằng false sau số lần lặp mong muốn),
trong ví dụ trên đó chính là i++
Vòng lặp do ... while c#
Cú pháp như sau
do { //Khối lệnh } while (điều_kiện);
Vòng lặp này khác while
ở chỗ, nó thi hành khối lệnh trước, sau đó mới kiểm tra điều_kiện,
kiểm tra thấy điều_kiện vẫn true
thì lặp tiếp.
Vòng lặp do ... while
khối lệnh lặp bao giờ cũng được thực hiện ít nhất
một lần.
// In ra các số chẵn int j = 10; do { Console.WriteLine("Số j = " + j); j += 2; } while (j <=20); // Số j = 10 // Số j = 12 // Số j = 14 // Số j = 16 // Số j = 18 // Số j = 20
Lệnh break và continue trong C#
Hai lệnh break
, continue
hỗ trợ việc điều hướng các vòng lặp.
Trong vòng lặp,
nếu gặp break
vòng lặp sẽ thoát ngay lập tức - và chuyển đến các câu lệnh sau vòng lặp.
Trong vòng lặp,
nếu gặp continue
thì tương đương việc đến cuối khối lệnh của lần lặp đó (bắt đầu thực hiện
lần lặp mới ngay).
//In ra các số chia hết cho 3 for (int i = 10; i <= 20; i ++ ) { if (i % 3 != 0) continue; // Chạy ngay vòng lặp tiếp Console.WriteLine("Số i = " + i); } // Số i = 12 // Số i = 15 // Số i = 18
Ví dụ in ra các số từ 1 đến 10
int i = 0; while (true) { Console.Write(" " + ++i); if (i == 10) break; // Thoát lặp } // 1 2 3 4 5 6 7 8 9 10
Source code: CS005_for_while (Git), hoặc tải ex005