C语言:初学者4--九九乘法表(5种方法)

九九乘法表共9行9列,重点考察for循环的掌握情况。

下面给出了输出完整乘法表、右上、右下、左上、左下乘法表的代码。

【代码一】输出完整的三角形

  1. #include <stdio.h>
  2. int main() {
  3. int i,j; // i, j控制行或列
  4. for(i=1;i<=9;i++) {
  5. for(j=1;j<=9;j++)
  6. // %2d 控制宽度为两个字符,且右对齐;如果改为 %-2d 则为左对齐
  7. // \t为tab缩进
  8. printf("%d*%d=%2d\t", i, j, i*j);
  9.  
  10. printf("\n");
  11. }
  12.  
  13. return 0;
  14. }

运行结果:

1*1= 1  1*2= 2  1*3= 3  1*4= 4  1*5= 5  1*6= 6  1*7= 7  1*8= 8  1*9= 9

2*1= 2  2*2= 4  2*3= 6  2*4= 8  2*5=10  2*6=12  2*7=14  2*8=16  2*9=18

3*1= 3  3*2= 6  3*3= 9  3*4=12  3*5=15  3*6=18  3*7=21  3*8=24  3*9=27

4*1= 4  4*2= 8  4*3=12  4*4=16  4*5=20  4*6=24  4*7=28  4*8=32  4*9=36

5*1= 5  5*2=10  5*3=15  5*4=20  5*5=25  5*6=30  5*7=35  5*8=40  5*9=45

6*1= 6  6*2=12  6*3=18  6*4=24  6*5=30  6*6=36  6*7=42  6*8=48  6*9=54

7*1= 7  7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49  7*8=56  7*9=63

8*1= 8  8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64  8*9=72

9*1= 9  9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81


【代码二】输出右上三角形左上三角形

  1. #include <stdio.h>
  2. int main() {
  3. int i,j;
  4. for(i=1;i<=9;i++){
  5. for(j=1;j<=9;j++){
  6. if(j<i)
  7. //打印八个空格,去掉空格就是左上三角形
  8. printf(" ");
  9. else
  10. printf("%d*%d=%2d ",i,j,i*j);
  11. }
  12.  
  13. printf("\n");
  14. }
  15.  
  16. return 0;
  17. }

运行结果:

   1*1= 1  1*2= 2  1*3= 3  1*4= 4  1*5= 5  1*6= 6  1*7= 7  1*8= 8  1*9= 9

           2*2= 4  2*3= 6  2*4= 8  2*5=10  2*6=12  2*7=14  2*8=16  2*9=18

                     3*3= 9   3*4=12  3*5=15  3*6=18  3*7=21  3*8=24  3*9=27

                                   4*4=16  4*5=20  4*6=24  4*7=28  4*8=32  4*9=36

                                                5*5=25  5*6=30  5*7=35  5*8=40  5*9=45

                                                              6*6=36  6*7=42  6*8=48  6*9=54

                                                                            7*7=49  7*8=56  7*9=63

                                                                                         8*8=64  8*9=72

                                                                                                       9*9=81


去掉八个空格后的运行结果:

1*1= 1  1*2= 2  1*3= 3  1*4= 4  1*5= 5  1*6= 6  1*7= 7  1*8= 8  1*9= 9

2*2= 4  2*3= 6  2*4= 8  2*5=10  2*6=12  2*7=14  2*8=16  2*9=18

3*3= 9  3*4=12  3*5=15  3*6=18  3*7=21  3*8=24  3*9=27

4*4=16  4*5=20  4*6=24  4*7=28  4*8=32  4*9=36

5*5=25  5*6=30  5*7=35  5*8=40  5*9=45

6*6=36  6*7=42  6*8=48  6*9=54

7*7=49  7*8=56  7*9=63

8*8=64  8*9=72

9*9=81


【代码三】输出右下三角形左下三角形

  1. #include <stdio.h>
  2. int main(){
  3. int i,j,n;
  4. for(i=1;i<=9;i++){
  5. // 将下面的for循环注释掉,就输出左下三角形
  6. for(n=1; n<=9-i; n++)
  7. printf(" ");
  8.  
  9. for(j=1;j<=i;j++)
  10. printf("%d*%d=%2d ",i,j,i*j);
  11.  
  12. printf("\n");
  13. }
  14.  
  15. return 0;
  16. }

运行结果:

                                                                                                        1*1= 1

                                                                                            2*1= 2  2*2= 4

                                                                                3*1= 3  3*2= 6  3*3= 9

                                                                   4*1= 4  4*2= 8  4*3=12  4*4=16

                                                     5*1= 5  5*2=10  5*3=15  5*4=20  5*5=25

                                        6*1= 6  6*2=12  6*3=18  6*4=24  6*5=30  6*6=36

                           7*1= 7  7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49

              8*1= 8  8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64

 9*1= 9  9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81


去掉循环后的运行结果

1*1= 1

2*1= 2  2*2= 4

3*1= 3  3*2= 6  3*3= 9

4*1= 4  4*2= 8  4*3=12  4*4=16

5*1= 5  5*2=10  5*3=15  5*4=20  5*5=25

6*1= 6  6*2=12  6*3=18  6*4=24  6*5=30  6*6=36

7*1= 7  7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49

8*1= 8  8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64

9*1= 9  9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

濯一一

你的鼓励:我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值