33: 九九乘法表

33 九九乘法表

作者: Turbo时间限制: 1S章节: 循环

问题描述 :

按如下形式输出九九乘法表:

输入说明 :

输入一个整数n(1<=n<=9),表示输出n*n乘法表。

输出说明 :

输出三个n*n乘法表,乘法表中每一个数字均占4格(不足4格的左边补空格)。每一行的最后一个数字之后无空格。每个乘法表后有一个空行(空行中无空格)。 第三个乘法表中,第二行的4和第一行的2对齐,第三行的9和第二行的6对齐,依次类推。

输入范例 :
5
输出范例 :
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 12 16 20
5 10 15 20 25

1
2 4
3 6 9
4 8 12 16
5 10 15 20 25

1 2 3 4 5
4 6 8 10
9 12 15
16 20
25

代码:

#include <stdio.h>
int main()
{
    int num[10][10];
    for (int i = 1; i < 10; i++)
    {
        num[1][i] = i;
        num[i][1] = i;
    }
    for (int i = 2; i < 10; i++)
    {
        for (int j = 2; j < 10; j++)
        {
            num[i][j] = i*j;
            num[j][i] = i*j;
        }
    }
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= n; j++)
        {
            printf("  %2d", num[i][j]);
        }
        printf("\n");
    }
    printf("\n");
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <=i; j++)
        {
            printf("  %2d", num[i][j]);
        }
        printf("\n");
    }
    printf("\n");
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j < i; j++)
        {
            printf("    ");
        }
        for (int j = i; j<=n; j++)
        {
            printf("  %2d", num[i][j]);
        }
        printf("\n");
    }
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/VictorierJwr/p/12408714.html