Bài 1 2 Cấu trúc lệnh lặp

Một phần của tài liệu Bài giảng ngôn ngữ lập trình C (Trang 28 - 29)

Tóm tắt nội dung:

Vịng lặp được chia làm hai loại là vịng lặp có điều kiện lặp kiểm tra trước (while) và vòng lặp kiểm tra sau (do... while). Trong C vòng lặp for là vòng lặp cùng loại vịng lặp while nhưng có thêm các lệnh khởi tạo khi bắt đầu vòng lặp và lệnh thực hiện sau mỗi lần lặp. Câu lệnh break để kết thúc một vòng lặp, còn continue để quay trở lại một lần lặp mới.

Thời lượng: 2 tiết

1. Lệnh for

Dạng thức chung:

for ([<khởi tạo>]; [<điều kiện lặp>]; [<sau lặp>]) <lệnh hoặc khối lệnh>

Vòng lặp for cho phép thực hiện một lệnh hoặc một khối lệnh lặp nhiều lần khi mà <điều kiện lặp> kiểm tra còn đúng. Phần <khởi tạo> của vòng for cho phép thực hiện một số lệnh khi bắt đầu thực hiện vòng lặp. Phần <sau lặp> là những câu lệnh được thực hiện sau mỗi lần lặp. Trong mỗi phần khởi tạo và sau lặp nếu có nhiều câu lệnh thì chúng được phân cách nhau bởi dấu phẩy ‘,’.

Ví dụ: int i, j;

/* in 5 dòng Hello bằng cách lặp với biến i mang 5 giá trị (1-5) */ for (i=1; i<=5; i++)

printf("Hello\n") ;

/* sử dụng nhiều lệnh trong khởi tạo và sau lặp */ for (i=1, j=1; i<=2*j; i+=3, j++)

printf("i=%d, j=%d\n", i, j); /*

kết quả in của vòng lặp này là i=1, j=1

i=4, j=2 */

Các phần <khởi tạo>, <điều kiện lặp>, <sau lặp> của một vịng for có thể trắng. Nếu điều kiện lặp khơng có thì nó lấy mặc định là ln đúng. Do vậy vòng for sau đây là một vòng lặp vô hạn.

for ( ; ; ) { ... }

Chương trình mẫu (bieuthuc.c): Tính giá trị biểu thức 1 + 1/2 + 1/4 + … + 1/2n với n được

nhập vào. #include <stdio.h> void main() { int n, i; float sum, sh; /* nhập n */ printf("n= "); scanf("%d", &n); /* khởi tạo sum và sh bằng số hạng đầu tiên */ sum = 0; sh = 1; /* dùng vịng lặp tính tổng các số hạng */ for (i=0; i<=n; i++)

{

sum += sh; /* thêm số hạng vào tổng */ sh /= 2; /* số hạng sau bị chia 2 */ }

printf("Gia tri bieu thuc la %f", sum); }

Một phần của tài liệu Bài giảng ngôn ngữ lập trình C (Trang 28 - 29)

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

(106 trang)