真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言編程如何實(shí)現(xiàn)輸出一個(gè)回型遞增的N階矩陣(螺旋矩陣)

首先,說到輸出矩陣無論什么水平的人都會(huì)認(rèn)為使用數(shù)組最為方便,所以這里說明的是利用多維數(shù)組的實(shí)現(xiàn)。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都做網(wǎng)站、民樂網(wǎng)絡(luò)推廣、重慶小程序開發(fā)公司、民樂網(wǎng)絡(luò)營銷、民樂企業(yè)策劃、民樂品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供民樂建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

首先是算法需要的變量定義

int i,j,n,sum;
printf("請輸入矩陣的行列長度:\n");
scanf("%d",&n);
int juzhen[n][n];
memset(juzhen,0,sizeof(juzhen));
sum=1;

其次就是核心算法,此程序核心在于如何寫入元素到定義的數(shù)組中,要實(shí)現(xiàn)回型的數(shù)據(jù)遞增,就必須使用不同的方法的輸入不同方向遞增的數(shù)據(jù);

還有這里要注意數(shù)組的定義,是從0號下標(biāo)開始填入元素(當(dāng)然從下標(biāo)為一的元素開始也是可以的,此方法類似不予說明);

另外在換方向輸入的時(shí)候還要注意前一方向已經(jīng)輸入數(shù)據(jù)的數(shù)組元素不能再輸入,于是使用if語句以區(qū)分是否填充過數(shù)據(jù)(這里需要提前將數(shù)組全部置零,使用了memset函數(shù),此函數(shù)需要頭文件string.h)。

這里定義了for語句實(shí)現(xiàn)的四種方向的輸入

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++;
        }

最后在對輸入的數(shù)字做區(qū)分,當(dāng)N階矩陣是一個(gè)偶數(shù)階的矩陣時(shí)沒有矩陣中心元素,但是奇數(shù)階矩陣有,語句如下

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

最后對數(shù)組進(jìn)行輸出

 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");
    }

}


網(wǎng)頁標(biāo)題:C語言編程如何實(shí)現(xiàn)輸出一個(gè)回型遞增的N階矩陣(螺旋矩陣)
網(wǎng)頁鏈接:http://weahome.cn/article/pseees.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部