网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C语言编程如何实现输出一个回型递增的N阶矩阵(螺旋矩阵)

首先,说到输出矩阵无论什么水平的人都会认为使用数组最为方便,所以这里说明的是利用多维数组的实现。

创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、成都做网站、民乐网络推广、重庆小程序开发公司、民乐网络营销、民乐企业策划、民乐品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供民乐建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

首先是算法需要的变量定义

int i,j,n,sum;
printf("请输入矩阵的行列长度:\n");
scanf("%d",&n);
int juzhen[n][n];
memset(juzhen,0,sizeof(juzhen));
sum=1;

其次就是核心算法,此程序核心在于如何写入元素到定义的数组中,要实现回型的数据递增,就必须使用不同的方法的输入不同方向递增的数据;

还有这里要注意数组的定义,是从0号下标开始填入元素(当然从下标为一的元素开始也是可以的,此方法类似不予说明);

另外在换方向输入的时候还要注意前一方向已经输入数据的数组元素不能再输入,于是使用if语句以区分是否填充过数据(这里需要提前将数组全部置零,使用了memset函数,此函数需要头文件string.h)。

这里定义了for语句实现的四种方向的输入

for(i=0;ii;j--)//向左
        {
            if(juzhen[n-1-i][j]==0)
            juzhen[n-1-i][j]=sum++;
        }
        for(j=n-1-i;j>i;j--)//向上
        {
            if(juzhen[j][i]==0)
                juzhen[j][i]=sum++;
        }

最后在对输入的数字做区分,当N阶矩阵是一个偶数阶的矩阵时没有矩阵中心元素,但是奇数阶矩阵有,语句如下

        if(n%2==1)
        juzhen[(n-1)/2][(n-1)/2]=sum++;

最后对数组进行输出

 for(i=0;i<=n-1;i++)
    for(j=0;j<=n-1;j++)
        {
            printf("%4d",juzhen[i][j]);
            if(j==n-1)
                printf("\n");
        }
完整源代码如下
```

#include

#include

int main()
{
int i,j,n,sum;
printf("请输入矩阵的行列长度:\n");
scanf("%d",&n);
int juzhen[n][n];
memset(juzhen,0,sizeof(juzhen));
sum=1;

for(i=0;ii;j--)//向左
    {
        if(juzhen[n-1-i][j]==0)
        juzhen[n-1-i][j]=sum++;
    }
    for(j=n-1-i;j>i;j--)//向上
    {
        if(juzhen[j][i]==0)
            juzhen[j][i]=sum++;
    }

}
        if(n%2==1)
        juzhen[(n-1)/2][(n-1)/2]=sum++;

for(i=0;i<=n-1;i++)
for(j=0;j<=n-1;j++)
    {
        printf("%4d",juzhen[i][j]);
        if(j==n-1)
            printf("\n");
    }

}


标题名称:C语言编程如何实现输出一个回型递增的N阶矩阵(螺旋矩阵)
文章位置:http://bjjierui.cn/article/pseees.html

其他资讯