首页 > 技术文章 > 6. C语言九九乘法表(五种输出形式)

kangyifan 2020-08-14 14:41 原文

九九乘法表共 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

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

#include <stdio.h>
int main() {
    int i,j;
    for(i=1;i<=9;i++){
        for(j=1;j<=9;j++){
            if(j<i)
                //打印八个空格,去掉空格就是左上三角形 
                printf("        ");
            else
                printf("%d*%d=%2d  ",i,j,i*j);
        }
 
        printf("\n");  
    }
 
    return 0;
}

运行结果:

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

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

#include <stdio.h>
int main(){
    int i,j,n;
    for(i=1;i<=9;i++){
        // 将下面的for循环注释掉,就输出左下三角形
        for(n=1; n<=9-i; n++)
            printf("        ");
        
        for(j=1;j<=i;j++)
            printf("%d*%d=%2d  ",i,j,i*j);
        
        printf("\n");
    }
 
    return 0;
}

运行结果:

                                                                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

感谢你的阅读,请用心感悟!更多内容请关注微信公众号:只关于编程 ;希望可以帮到爱学习的你!!分享也是一种快乐!!!请接力。。。

(微信扫一扫加关注,不迷路)

点击查看原文,谢谢!

推荐阅读