Các vòng lặp lồng nhau bao gồm một vòng lặp được đặt bên trong một vòng lặp khác.
Ví dụ về vòng lặp for lồng nhau như sau -
for (initialization; condition; operation){ for (initialization; condition; operation){ statement; } statement; }
Trong ví dụ này, vòng lặp bên trong chạy qua toàn bộ phạm vi lặp lại của nó cho mỗi lần lặp lại của vòng lặp bên ngoài.
Ví dụ
Sau đây là chương trình C để in bảng bốn lũy thừa đầu tiên của các số từ 1 đến 9 bằng cách sử dụng vòng lặp for lồng nhau -
#include <stdio.h> void main(){ int i, j, k, temp,I=1; printf("I\tI^2\tI^3\tI^4 \n"); printf("--------------------------------\n"); for ( i = 1; i < 10; i ++) /* Outer loop */{ for (j = 1; j < 5; j ++) /* 1st level of nesting */{ temp = 1; for(k = 0; k < j; k ++) temp = temp * I; printf ("%d\t", temp); } printf ("\n"); I++; } }
Đầu ra
Khi chương trình trên được thực thi, nó tạo ra kết quả sau -
I I^2 I^3 I^4 ----------------------- 1 1 1 1 2 4 8 16 3 9 27 81 4 16 64 256 5 25 125 625 6 36 216 1296 7 49 343 2401 8 64 512 4096 9 81 729 6561