题解 | #蛇形矩阵#

蛇形矩阵

http://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e

#include<stdio.h>

int main()
{
    int num;
    scanf("%d", &num);
    int a[100][100] = { 0 };
    
    int k = 1; //用以每行的数字叠加
    int m = 0; //用于第一列的数字叠加

    for (int i = 0; i < num; i++)
    {
        for (int j = 0; j < num - i; j++)
        {
            if (j == 0) //第一列
            {
                if (i == 0)
                {
                    a[i][j] = 1;
                    m++;
                }
                else
                {
                    a[i][j] = a[i - 1][j] + m;
                    m++;
                }
            }
            else //其他列
            {
                a[i][j] = a[i][j - 1] + i + k;
            }
            k++;
            
        }
        k = 1;
    }

    for (int i = 0; i < num; i++)
    {
        for (int j = 0; j < num - i; j++)
        {
            printf("%d ", a[i][j]);
        }
        printf("\n");
    }
}
全部评论

相关推荐

11-16 01:13
宜春学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务