二重循环(九九乘法表)
如何输出如下所示的九九乘法表呢?
1x1= 1 1x2= 2 2x2= 4 1x3= 3 2x3= 6 3x3= 9 1x4= 4 2x4= 8 3x4=12 4x4=16 1x5= 5 2x5=10 3x5=15 4x5=20 5x5=25 1x6= 6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 1x7= 7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 1x8= 8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64 1x9= 9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81 |
可以先从简单的开始。下面的代码输出乘法表的第5行。
1 2 3 4 5 6 7 8 9 10 | #include <stdio.h> int main() { int i, j; i=5; for (j=1; j<=i; j++) printf("%dx%d=%2d ", j, i, j*i); printf("\n"); return 0; } |
如果 i 遍历1~9的所有数,就恰好是九九乘法表。 把第6行~第9行放入 i 的循环中,就得到下面的代码
1 2 3 4 5 6 7 8 9 10 11 | #include <stdio.h> int main() { int i,j; for (i=1; i<=9; i++) { for (j=1; j<=i; j++) printf("%dx%d=%2d ", j, i, j*i); printf("\n"); } return 0; } |
i 所在的循环称为外循环, j 所在的循环成为内循环。