题述:输出n行按如下规律排列的数
输入: 4(应该指的是n)
输出:
思路:
利用下标的规律求解,考察数组下标的灵活应用,我们可以看出数从1开始是斜着往下放的,那么我们如何利用两层for循环求解这道题?假设是a数组存储这些数
对应下标规律
#include<stdio.h>
#define row 100
#define col 100
int main()
{
int n = 0, cnt = 0;
scanf("%d", &n);
int a[row][col];//a数组用来存放数
//从1开始放入数组中,对应的规律如代码所示
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < n - i; ++j)
{
a[i + j][j] = ++cnt;
}
}
//打印输出,输出三角
for (int i = 0; i < n; ++i)
{
for (int j = 0; j <= i; ++j)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
运行结果: