最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++實(shí)現(xiàn):螺旋矩陣的實(shí)例代碼

 更新時(shí)間:2013年03月17日 20:24:30   作者:  
螺旋矩陣是指一個(gè)呈螺旋狀的矩陣,它的數(shù)字由第一行開 始到右邊不斷變大,向下變大, 向左變大,向上變大,如此循環(huán)。

通過觀察發(fā)現(xiàn)矩陣的下標(biāo)有這樣一個(gè)規(guī)律:a行遞增后b列遞增然后c行遞減再d列遞減,但是對應(yīng)值卻是逐漸增加的。因此可用4個(gè)循環(huán)實(shí)現(xiàn),需要注意的是在賦值時(shí)不要把之前的值覆蓋了。所以在這里選擇相同顔色部分賦值,代碼如下:

復(fù)制代碼 代碼如下:

#include <iostream>
#include <iomanip>

using namespace std;

// 輸出螺旋矩陣
void Matrix()
{
    const int size = 10; // 矩陣大小
    int matrix[size][size] = {0};

    int row = 0;
    int col = 0;

    int start = 1; // 起始值
    int temp = size;
    for (int count = 0; count < size / 2; count++) // size階的矩陣可以畫size/2個(gè)圈
    {
        for (; col < temp - 1; col++) // a排賦值
            matrix[row][col] = start++;
        for (; row < temp - 1; row++) // b排賦值
            matrix[row][col] = start++;
        for (col = temp - 1; col > count; col--) // c排賦值
            matrix[row][col] = start++;
        for (row = temp - 1; row > count; row--) // d排賦值
            matrix[row][col] = start++;

        // 進(jìn)入下一圈
        temp--;
        row++;
        start -= 1; // 這里-1是因?yàn)樵趽Q圈的時(shí)候會(huì)多加1
    }

    if (0 != size % 2) // 如果size為奇數(shù)則最后會(huì)有一個(gè)數(shù)遍歷不到,這里補(bǔ)上
    matrix[row][col+1] = start + 1;

    // 輸出數(shù)組
    for (int i = 0; i < size; i++)
    {
        for (int j = 0; j < size; j++)
        {
            cout << setw(5) << matrix[i][j];
        }
        cout << endl;
    }
}

int main(int argc, char **argv)
{
    Matrix();
    return 0;
}


結(jié)果如下(分奇、偶數(shù)):

 

相關(guān)文章

  • C++中指針指向二維數(shù)組實(shí)例詳解

    C++中指針指向二維數(shù)組實(shí)例詳解

    這篇文章主要介紹了C++中指針指向二維數(shù)組實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • C語言通訊錄實(shí)例分享

    C語言通訊錄實(shí)例分享

    這篇文章主要為大家分享了C語言通訊錄實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Qt數(shù)據(jù)庫應(yīng)用之實(shí)現(xiàn)文件編碼格式識別

    Qt數(shù)據(jù)庫應(yīng)用之實(shí)現(xiàn)文件編碼格式識別

    在做數(shù)據(jù)導(dǎo)入導(dǎo)出的過程中,如果應(yīng)用場景多了,相信各位都會(huì)遇到一個(gè)問題就是文件編碼的問題。本文將用Qt實(shí)現(xiàn)文件編碼格式識別,感興趣的可以了解一下
    2022-06-06
  • C語言貪吃蛇經(jīng)典小游戲

    C語言貪吃蛇經(jīng)典小游戲

    這篇文章主要為大家詳細(xì)介紹了C語言貪吃蛇經(jīng)典小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C語言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)

    C語言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)

    這篇文章主要介紹了C語言中計(jì)算正弦的相關(guān)函數(shù)總結(jié),包括正弦和雙曲線正弦以及反正弦的函數(shù),需要的朋友可以參考下
    2015-08-08
  • C++之關(guān)于string對象的大小比較

    C++之關(guān)于string對象的大小比較

    這篇文章主要介紹了C++之關(guān)于string對象的大小比較方式,具有很好的 參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 詳解c++ libuv工作隊(duì)列

    詳解c++ libuv工作隊(duì)列

    這篇文章主要介紹了c++ libuv工作隊(duì)列的相關(guān)資料,幫助大家更好的理解和使用libuv,感興趣的朋友可以了解下
    2021-02-02
  • Qt利用QGraphicsView繪制跳舞的機(jī)器人

    Qt利用QGraphicsView繪制跳舞的機(jī)器人

    最近新學(xué)了一招秘密武器,打算分享給大家!那就是如何在QGraphicsView中制作一個(gè)跳舞的機(jī)器人,快跟隨小編一起動(dòng)手嘗試一下吧
    2022-06-06
  • 獲取C++變量類型的簡單方法

    獲取C++變量類型的簡單方法

    這篇文章主要介紹了獲取C++變量類型的簡單方法,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • C++分析類的對象作類成員調(diào)用構(gòu)造與析構(gòu)函數(shù)及靜態(tài)成員

    C++分析類的對象作類成員調(diào)用構(gòu)造與析構(gòu)函數(shù)及靜態(tài)成員

    終于到了對象的初始化和清理的最后階段了,在這里分享一個(gè)cpp里有多個(gè)類時(shí),一個(gè)類的對象作為另一個(gè)類成員的時(shí)候構(gòu)造函數(shù)和析構(gòu)函數(shù)調(diào)用的時(shí)機(jī)。還有一個(gè)靜態(tài)成員也是經(jīng)??嫉降狞c(diǎn),在這篇博客將會(huì)詳解其概念并舉出案例鞏固,讓我們開始
    2022-05-05

最新評論

海伦市| 大安市| 昌黎县| 商都县| 宜兰县| 从江县| 巴林右旗| 广丰县| 河曲县| 黎川县| 康定县| 湛江市| 明光市| 永胜县| 临夏市| 长丰县| 绥阳县| 都江堰市| 祁连县| 冕宁县| 韶关市| 胶州市| 平陆县| 大港区| 和平县| 锦州市| 家居| 澜沧| 桓台县| 西贡区| 嘉定区| 武穴市| 拉萨市| 忻城县| 平利县| 新巴尔虎右旗| 元朗区| 高邑县| 青浦区| 高州市| 稻城县|