C++ 实现拐角方阵生成算法 - ZZ1480
C++ 实现拐角方阵生成算法 - ZZ1480
题目描述
输入一个正整数 N,生成一个 NxN 的拐角方阵(具体规律见样例)。
输入
一行输入一个整数 N (1 < N <= 30)
输出
共 N 行,每行 N 个正整数,每个正整数占 3 列(请使用 printf '%3d' ... a[i][j]:输出每个元素)。
样例输入
7
样例输出
1 1 1 1 1 1 1
1 2 2 2 2 2 2
1 2 3 3 3 3 3
1 2 3 4 4 4 4
1 2 3 4 5 5 5
1 2 3 4 5 6 6
1 2 3 4 5 6 7
C++ 代码
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
int n;
cin>>n;
int a[100][100];//首先定义一个二维数组
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(i>=j)
{
a[i][j]=j;//如果i>=j,那么第i行第j列就是j
}
else
{
a[i][j]=i;//否则就是i
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
printf('%3d',a[i][j]);//用printf输出每一个a[i][j],并使其占3列
}
printf('\n');//换行
}
return 0;//完美结束!
}
代码解释
- 二维数组定义: 使用
int a[100][100]定义一个二维数组来存储拐角方阵的元素。 - 循环生成方阵: 使用两层循环遍历数组,根据
i和j的关系确定当前元素的值。 - 输出格式: 使用
printf('%3d', a[i][j])输出每个元素,并使用printf('\n')换行。
总结
这段 C++ 代码实现了生成 NxN 拐角方阵的算法,并展示了基本的数组操作和输出格式控制。通过学习这段代码,您可以更好地理解二维数组的应用和 C++ 中的循环和输出语句的使用。
原文地址: https://www.cveoy.top/t/topic/nGOR 著作权归作者所有。请勿转载和采集!