C语言,输出4*4的螺旋矩阵.
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/17 07:58:43
C语言,输出4*4的螺旋矩阵.
请在语句上批注解释,本人初学者,语句请尽量简单.
请在语句上批注解释,本人初学者,语句请尽量简单.
输出结果是以下的样子吗?
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
再问: 对。
再答: 以下代码,把矩阵分为五块区域,分别进行填数
#include <stdio.h>
#define N 4
int main(void)
{
\x09int i,j,k,base=1,n;
\x09int a[N][N]={0};
\x09
\x09n=N;
\x09
\x09if(n%2==1)
\x09\x09a[(n-1)/2][(n-1)/2]=n*n;//奇数的矩阵的中心点
\x09for(k=0;k<n/2;k++) //n/2为每区域需要填空的行/列数
\x09{
\x09\x09for(i=k;i<=n-1-k;i++)//第一区块
\x09\x09\x09a[k][i]=base++;;
\x09\x09for(j=k+1;j<n-1-k;j++)//第二区块
\x09\x09\x09a[j][n-1-k]=base++;
\x09\x09for(i=n-1-k;i>k;i--)//第三区块
\x09\x09\x09a[n-1-k][i]=base++;
\x09\x09for(j=n-1-k;j>k;j--)//第四区块
\x09\x09\x09a[j][k]=base++;
\x09}
\x09//输出矩阵
\x09for(i=0;i<n;i++)
\x09{
\x09\x09for(j=0;j<n;j++)
\x09\x09\x09printf("%4d",a[i][j]);
\x09\x09printf("\n");
\x09}
\x09return 0;
}
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
再问: 对。
再答: 以下代码,把矩阵分为五块区域,分别进行填数
#include <stdio.h>
#define N 4
int main(void)
{
\x09int i,j,k,base=1,n;
\x09int a[N][N]={0};
\x09
\x09n=N;
\x09
\x09if(n%2==1)
\x09\x09a[(n-1)/2][(n-1)/2]=n*n;//奇数的矩阵的中心点
\x09for(k=0;k<n/2;k++) //n/2为每区域需要填空的行/列数
\x09{
\x09\x09for(i=k;i<=n-1-k;i++)//第一区块
\x09\x09\x09a[k][i]=base++;;
\x09\x09for(j=k+1;j<n-1-k;j++)//第二区块
\x09\x09\x09a[j][n-1-k]=base++;
\x09\x09for(i=n-1-k;i>k;i--)//第三区块
\x09\x09\x09a[n-1-k][i]=base++;
\x09\x09for(j=n-1-k;j>k;j--)//第四区块
\x09\x09\x09a[j][k]=base++;
\x09}
\x09//输出矩阵
\x09for(i=0;i<n;i++)
\x09{
\x09\x09for(j=0;j<n;j++)
\x09\x09\x09printf("%4d",a[i][j]);
\x09\x09printf("\n");
\x09}
\x09return 0;
}
C语言,输出4*4的螺旋矩阵.
一道螺旋矩阵的C语言题!
一个5x5的螺旋矩阵如下所示,C语言编写程序输出N x N的螺旋矩阵 (N
求C语言程序,N*N的螺旋矩阵.
C语言编写 螺旋矩阵编写 一个形如这样的矩阵宽度 自制~1 2 3 4 516 17 18 19 615 24 25 2
用c语言编程输出4×4阶矩阵的最大值、最小值及其下标
请问一道C语言程序题输出4X4矩阵的四周元素之和
C语言请教高手,输入一个数字n,以该数字作为矩阵的大小,把1,2,3...n*n的数字按顺时螺旋输出.
c语言编程:输入两个3行4列的矩阵,计算并输出两个矩阵的和.
用C语言编写一个输出100(或n)行4列的星型矩阵?怎么写.
求一份C语言做的数字螺旋矩阵的程序
c语言中,由键盘输入一个3×4(3行4列)的矩阵,输出矩阵中的鞍点(即在矩阵中行中最大,列中最小的数),若没有鞍点,输出