输出九九乘法表

思路

因为九九乘法表是一个矩阵,涉及两个维度,所以要有两个变量 i,j 分别表示行和列两个维度。

因为涉及两个维度,行要循环,列也要循环,所以涉及循环嵌套。

因为列数会随着行号变化,因此行先变化,为外层循环;行固定时,列再变化,为内层循环。

 

注意不同形状的三角形,需要不同的判断条件来输出九九乘法表,尤其要注意右下三角形。

 

输出完整的九九乘法表 -- for 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j;
 6     for (int i = 1; i < 10; i++)
 7     {
 8         for (int j = 1; j < 10; j++)
 9         {
10             printf("%d*%d=%-4d", i, j, i * j);
11         }
12         printf("\n");                                    //一行输出后,换行
13     }
14     return 0;
15 }

 

 

输出完整的九九乘法表 -- while 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i = 1;
 6     while (i<10)
 7     {
 8         int j = 1;                                      // j 的初始化要在外部循环内部,保证每一行都从第一列开始循环
 9         while (j<10)
10         {
11             printf("%d*%d=%-4d", i, j, i * j);
12             j++;
13         }
14         printf("\n");
15         i++;
16     }
17     return 0;
18 }

 

 

 

输出左下三角九九乘法表 -- for 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j;
 6     for (int i = 1; i < 10; i++)
 7     {
 8         for (int j = 1; j <= i; j++)                      //左下三角,行号>=列号
 9         {
10             printf("%d*%d=%-4d", i, j, i * j);
11         }
12         printf("\n");
13     }
14     return 0;
15 }

 

 

输出右下三角九九乘法表 -- for 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j, n;
 6     for (int i = 1; i < 10; i++)
 7     {
 8         for (int n = 1; n <= 9 - i; n++)                  //这里有两个for 循环并列,先执行第一个for循环,等这个循环跳出,才执行第二个for循环 
9
{ 10 printf(" "); //八个空格,对应应该输出的字符串长度 11 } 12 for (int j = 1; j <= i; j++) 13 { 14 printf("%d*%d=%-4d", i, j, i * j); 15 } 16 printf("\n"); 17 } 18 return 0; 19 }

 

 

输出左上三角九九乘法表 -- for 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j, n;
 6     for (int i = 1; i < 10; i++)
 7     {
 8         for (int j = 1; j < 10; j++)
 9         {
10             if (j<=10-i)
11             {
12                 printf("%d*%d=%-4d", i, j, i * j);
13             }
14             else
15             {
16                 printf("        ");
17             }
18         }
19         printf("\n");
20     }
21     return 0;
22 }

 

 

输出右上三角九九乘法表 -- for 循环

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j, n;
 6     for (int i = 1; i < 10; i++)
 7     {
 8         for (int j = 1; j < 10; j++)
 9         {
10             if (i<=j)
11             {
12                 printf("%d*%d=%-4d", i, j, i * j);
13             }
14             else
15             {
16                 printf("        ");
17             }
18         }
19         printf("\n");
20     }
21     return 0;
22 }

 

posted @ 2020-08-01 22:22  麦田猪小六  阅读(620)  评论(0编辑  收藏  举报