Vòng lặp for trong c

     
*

1. Lấy ví dụ như mở đầu

Việc in ra tên của khách hàng rất dễ dàng và đơn giản phải không. Một lịch trình viết rất đối chọi giản.

Bạn đang xem: Vòng lặp for trong c

#include int main() printf("Nguyen Van Quan "); return 0;Ok. Vậy hiện nay tôi ước ao bạn in ra 10 lần thương hiệu bạn?

#include int main() printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); printf("Nguyen Van Quan "); return 0;Khá solo giản, chỉ việc copy thành 10 chiếc printf là xong. Nhưng lại nếu chưa hẳn 10, nhưng là 1000 hoặc những hơn? ví dụ việc copy là ko khả thi.

Trong thực tế, các ứng dụng sẽ có những quá trình phải lặp đi lặp lại nhiều lần hệt như ví dụ trên. Hoặc ví dụ như phần mềm của khách hàng cần in một danh sách những nhân viên, mỗi nhân viên cấp dưới có tin tức (nội dung) khác biệt nhưng kết cấu thì cực kỳ giống nhau. Hoặc đơn giản và dễ dàng hơn là bạn lướt facebook cùng thấy những tin bài từ đồng đội của mình, các tin này không giống nhau về văn bản nhưng kết cấu thì khôn cùng giống nhau.

Để tiến hành được những các bước cần lặp lại nhiều lần như thế, họ sẽ sử dụng cấu tạo vòng lặp gồm for, while, do-while. Bài xích này bọn họ sẽ tìm hiểu về vòng lặp for.

Chúng ta vẫn sửa lại ví dụ in 10 lần tên các bạn như sau:

#include int main(){ int i; for (i = 1; i Như code trên, tôi đã áp dụng vòng lặp for để thực hiện công việc in ra tên của bản thân 10 lần, với 1000 lần cũng thật đơn giản dễ dàng khi tôi thế số 10 thành số 1000 (bạn có thể thử). Nhìn vào code bạn có thể hình dung cơ phiên bản về việc họ làm.

2. Cấu trúc vòng for

*

Cú pháp, giữ đồ và cách hoạt động vui chơi của vòng lặp for

Nhìn vào hình bên trên ta thấy vòng for có một cú pháp với cách chuyển động khá rõ ràng và dễ hiểu. Tuy nhiên các bạn cần lưu giữ ý:

Sau lệnh for không có chấm phẩy.3 biểu thức của vòng lặp for phân làn nhau bằng dấu chấm phẩy (;), các biểu thức hoàn toàn có thể vắng khía cạnh 1,2 hoặc cả 3 cơ mà vẫn phải tất cả dấy chấm phẩy này.Biểu thức 1 khi nào cũng chỉ được đo lường một lần lúc gọi thực hiện for.Biểu thức 2, 3 và thân for rất có thể thực hiện lặp lại nhiều lần.Biểu thức 1, 2, 3 phải ngăn cách bằng lốt chấm phẩy ( ; ), các biểu thức có thể vắng mặt 1,2 hoặc cả 3 tuy vậy vẫn phải gồm dấy chấm phẩy này.Nếu biểu thức 2 không có, vòng for được xem là luôn luôn luôn đúng. Muốn ra khỏi vòng lặp for phải dùng 1 trong những lệnh break, goto hoặc return.Với mỗi biểu thức hoàn toàn có thể viết thành một hàng biểu thức con chia cách nhau bởi dấu phẩy. Khi đó các biểu thức con được xác minh từ trái quý phái phải. Tính đúng sai của dãy biểu thức con trong biểu thức thứ 2 được khẳng định bởi biểu thức con cuối cùng.Trong thân for (khối lệnh) rất có thể chứa một hoặc nhiều cấu tạo điều khiển khác, vòng lặp khác.Khi chạm mặt lệnh break, kết cấu lặp sâu nhất vẫn thoát ra.Trong thân for gồm thểdùng lệnh goto để thoát ra khỏi vòng lặp cho vị trí mong muốn muốn.Trong thân for có thể sử dụng return để trở về một hàm như thế nào đó.Trong thân for rất có thể sử dụng lệnh continue nhằm chuyển cho đầu vòng lặp (bỏ qua các câu lệnh còn lại trong thân).

Quay quay lại code của lấy ví dụ trên:

#include int main(){ int i; for (i = 1; i thừa trình hoạt động như sau:

Bước 1: Chạy biểu thức 1 tức là gán i = 1.Bước 2: Chạy biểu thức 2 có nghĩa là kiểm tra i Chạy khối lệnh tức là in ra tên.Bước 3: Chạy biểu thức 3 tức là tăng i lên 1 đơn vị. Giờ đồng hồ thì i = 2.Bước 4: trở về biểu thức 2. Bình chọn i Chạy khối lệnh, có nghĩa là in ra tên.Bước 5: Chạy biểu thức 3 tức tăng i lên 1. Tiếng i = 3.Bước 6. Quay trở lại biểu thức 2,…Bước….Bước x: Chạy biểu thức 3, tăng i lên 1. Giờ i = 10.Bước x+1: quay trở lại biểu thức 2 tức soát sổ i Chạy khối lệnh in ra tên.Bước x+2: Chạy biểu thức 3, tăng i lên 1. Giờ i = 11.Bước x+3: trở lại biểu thức 2, kiểm tra i thoát ra khỏi vòng for. Tiến hành lệnh tiếp theo sau ngang hàng vòng for (lệnh return 0 bên dưới).

Ok. Giờ chúng ta đã cơ phiên bản hiểu về vòng lặp for. Liên tục làm vài lấy ví dụ nữa.

Ví dụ 1:


Viết lịch trình in ra 15 lần tên của bạn, cố nhiên thứ tự như sau:

Nguyen Van QuanNguyen Van QuanNguyen Van quan tiền ….

Hum… làm sao lấy được các số tăng dần? chúng ta có chú ý vào quá trình chạy quá trình của vòng for? họ có 1 biến hóa i cứ tăng dần… Vậy bọn họ sẽ lợi dụng nó.

#include int main(){ int i; for (i = 1; i

Ví dụ 2:

Hãy in ra những số dương chẵn từ là 1 đến 20 trên thuộc 1 dòng, bí quyết nhau bởi vì dấu cách.

chỉ việc cho i chạy từ một đến đôi mươi và chúng ta sẽ kiểm soát số làm sao chẵn thì in ra. Để kiểm tra số chẵn, bọn họ nhớ lại phép phân chia lấy dư. Ví như i chia 2 dư 0 vậy nên số chẵn.

Xem thêm: Học Cách Làm Món Da Heo Kho Tiêu, Cách Làm Da Heo Kho Tiêu

#include int main(){ int i; for (i = 1; i Ok. Tuy vậy tôi mong muốn bạn suy xét thêm chút trước lúc nhìn xuống nhắc nhở và code. Làm sao không cần sử dụng if kiểm soát số chẵn mà vẫn làm được bài xích này?

Hãy nhớ những biểu thức vào for chưa phải là vậy định, bạn có thể thay đổi nó. Với hãy chuyển đổi cách tăng i. Bọn họ cho i bắt đầu từ 2 và mỗi lần tăng thì tạo thêm 2 đối kháng vị.

#include int main(){ int i; for (i = 2; i cụ thể code này ngon hơn code của lần trước đó. Ở trên chúng ta tăng i lên 2 đơn vị chức năng bằng lệnh i = i + 2.Đây là phép gán i + 2 đến i, chứ không phải lệnh đối chiếu i với i + 2.

Ví dụ 3:

Tính tổng những số nguyên chẵn từ 1 đến 20.

#include int main(){ int i; int s = 0; for (i = 2; i để ý trong code trên, chúng ta khai báo 1 biến s (viết tắt của sum) để giữ lại tổng. Những lần i tăng thêm thì họ cộng tập trung s bằng lệnh s = s + i.

Ví dụ 4:


Tính tổng những số lẻ từ một đến đôi mươi nhưng đến lúc nào tổng vượt vượt 15 thì ngừng lại.

Ở đây chúng ta sẽ cộng tổng các số lẻ, giống như các số chẵn thôi, tuy vậy khi nhưng tổng lớn hơn 15 rồi thì chúng ta sẽ dừng lại, không cộng nữa.

#include int main(){ int i; int s = 0; for (i = 1; i Đơn giản chỉ vấn đề kiểm tra khi nào s vẫn nhỏ tuổi hơn hoặc bằng 15 thì ta cộng vào. Bọn họ sẽ bao gồm s = 1 + 3 + 5 + 7 = 16.

Tuy nhiên nếu như bạn để ý, khi s > 15, họ không cộng vào s mà lại vòng lặp for vẫn chạy cho đến khi i > 20. Có nghĩa là sẽ chạy tiếp các lần lặp i = 9, 11, 13, 15, 17, 19. Do thế nó làm lãng phí, thừa thãi cùng làm lịch trình chạy lâu hơn. Vày vậy bọn họ nên ngắt vòng lặp tại thời điểm thực hiện chấm dứt lệnh khi i = 7. Để triển khai việc này có thể dùng break, hoặc goto, cơ mà khuyên chúng ta nên sử dụng break vì đơn giản dễ dàng và an toàn.

#include int main(){ int i; int s = 0; for (i = 1; i

Ví dụ 5

Nhập vào n số nguyên, tính tổng các số chẵn đã nhập.

#include int main(){ int i, n, x; int s = 0; printf("Enter n = "); scanf("%d", &n); for (i = 1; i Ở lấy ví dụ này, tôi hướng dẫn các bạn cách dùng lệnh continue. Lệnh này không thoát ra khỏi vòn lặp tuy thế lại có tác dụng là quay trở lại biểu thức 3 mà không làm các lệnh phía sau nó. Ở trên đây nếu x nhập vào không chẵn thì làm lơ lệnh cộng dồn s nhưng mà chạy cho lệnh tăng i ngay.

Xem thêm: Viết Bài Tập Làm Văn Số 2 Lớp 8: Đề 2 Bài Viết Số 2 Lớp 8 De 2?

Bài tập:

Viết lịch trình nhập vào số n cùng in ra các ước của số n đó.Viết lịch trình kiểm tra một số có là số nguyên tố không? Số nhân tố là số nguyên dương có duy tuyệt nhất 2 ước là 1 và bao gồm nó. Lấy ví dụ số 2, 3, 5, …Viết lịch trình kiểm tra 1 số có là số tuyệt vời nhất không? Số hoàn hảo nhất là số nguyên dương có tổng những ước bằng 2 lần nó. VD số 6 có những ước 1, 2, 3, 6 và tổng 1 + 2 + 3 + 6 = 12 (bằng gấp đôi 6).Viết chương trình tính S = 1 + 1/2 + 1/3 + … + 1/NViết công tác tính tổng bình phương các số lẻ từ 1 đến n.Viết công tác tính n! biết n! = 1.2.3.4…nViết chương trình tính số thứ n của hàng fibonaci biết dãy f(n) = f(n-1) + f(n-2), n > 2 với f(1) = 1, f(2) = 1.Viết chương trình nhập vào chiều dài, chiều rộng lớn của hình chữ nhật. Vẽ hình chữ nhật vết sao (*) có kích cỡ đã nhập.