中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

定制網(wǎng)站建設(shè)公司費用搜狗收錄查詢

定制網(wǎng)站建設(shè)公司費用,搜狗收錄查詢,湖南土特產(chǎn)銷售網(wǎng)網(wǎng)站建設(shè)制作,做網(wǎng)站基本教程目錄 一、一維數(shù)組1、定義和初始化2、訪問和修改3、元素逆置和冒泡排序 二、二維數(shù)組(用指針進行訪問與修改)1、定義和初始化2、訪問與修改 三、更高維度的數(shù)組1、三維數(shù)組2、高維數(shù)組 一、一維數(shù)組 1、定義和初始化 在 C 中,可以使用下面的…

目錄

  • 一、一維數(shù)組
    • 1、定義和初始化
    • 2、訪問和修改
    • 3、元素逆置和冒泡排序
  • 二、二維數(shù)組(用指針進行訪問與修改)
    • 1、定義和初始化
    • 2、訪問與修改
  • 三、更高維度的數(shù)組
    • 1、三維數(shù)組
    • 2、高維數(shù)組

一、一維數(shù)組

1、定義和初始化

在 C++ 中,可以使用下面的語法定義一個一維數(shù)組:

type arrayName [ arraySize ];

其中,type 是數(shù)組元素的類型,arrayName 是數(shù)組的名稱,arraySize 是數(shù)組中元素的數(shù)量。

例如,下面的代碼定義了一個包含 5 個整數(shù)的一維數(shù)組:

int numbers[5];

在定義數(shù)組時,可以同時初始化數(shù)組中的元素。例如:

int numbers[5] = {1, 2, 3, 4, 5};

也可以只初始化部分元素,未初始化的元素將被自動設(shè)置為默認值(通常為 0)。例如:

int numbers[5] = {1, 2}; // 等價于 {1, 2, 0, 0, 0}

如果在定義數(shù)組時不指定數(shù)組大小,則編譯器會根據(jù)初始化元素的數(shù)量自動確定數(shù)組大小。例如:

int numbers[] = {1, 2, 3, 4, 5}; // 等價于 int numbers[5] = {1, 2, 3, 4, 5};

2、訪問和修改

在定義了一個一維數(shù)組之后,可以通過下標運算符 [] 訪問或修改數(shù)組中的元素。下標從 0 開始,最大值為 arraySize - 1。例如:

int numbers[5] = {1, 2, 3, 4, 5};
std::cout << numbers[0] << std::endl; // 輸出第一個元素
numbers[1] = 42; // 修改第二個元素

注意,在訪問或修改數(shù)組中的元素時,必須確保下標在合法范圍內(nèi)。否則會發(fā)生未定義行為。

除了使用下標運算符訪問或修改數(shù)組中的元素外,還可以使用指針進行操作。因為在 C++ 中,數(shù)組名可以理解為指向數(shù)組第一個元素的指針,直接輸出數(shù)組名是數(shù)組的首元素地址(16進制)。例如:

int numbers[5] = {1, 2, 3, 4, 5};
std::cout << numbers << std::endl; // 輸出數(shù)組首地址
std::cout << *numbers << std::endl; // 輸出第一個元素
*(numbers + 1) = 42; // 修改第二個元素

此外,在 C++ 中還可以使用范圍 for 循環(huán)遍歷一維數(shù)組中的所有元素。例如:

int numbers[5] = {1, 2, 3, 4, 5};
for (int n : numbers) {std::cout << n << std::endl; // 輸出每個元素
}

3、元素逆置和冒泡排序

①元素逆置
用雙指針算法將其中的元素逆置。

#include <iostream>int main() {int numbers[] = {3,2,1,4,5};int size = sizeof(numbers) / sizeof(int);//將整個數(shù)組占用內(nèi)存大小除單個數(shù)組內(nèi)存大小得到數(shù)組長度// 雙指針算法int* left = numbers;int* right = numbers + size - 1;while (left < right) {int temp = *left;//暫存值左值*left = *right;//將較大值賦給左邊元素*right = temp;//較小值賦給右邊元素left++;right--;}// 輸出結(jié)果for (int n : numbers) {std::cout << n << " ";}std::cout << std::endl;return 0;
}

②冒泡排序

#include <iostream>int main() {int numbers[] = {4, 5, 2, 31};int size = sizeof(numbers) / sizeof(int);// 冒泡排序for (int i = 0; i < size - 1; i++) {for (int j = 0; j < size - i - 1; j++) {if (numbers[j] > numbers[j + 1]) {int temp = numbers[j];numbers[j] = numbers[j + 1];numbers[j + 1] = temp;}}}// 輸出結(jié)果for (int n : numbers) {std::cout << n << " ";}std::cout << std::endl;return 0;
}

二、二維數(shù)組(用指針進行訪問與修改)

1、定義和初始化

二維數(shù)組是由多個一維數(shù)組組成的數(shù)組。在 C++ 中,可以使用下面的語法定義一個二維數(shù)組:

type arrayName [ xSize ][ ySize ];

其中,type 是數(shù)組元素的類型,arrayName 是數(shù)組的名稱,xSize 和 ySize 分別表示二維數(shù)組中第一維和第二維的大小。

例如,下面的代碼定義了一個包含兩行三列整數(shù)的二維數(shù)組:

int matrix[2][3];

與一維數(shù)組類似,在定義二維數(shù)組時也可以同時初始化其中的元素。例如:

int matrix[2][3] = {{1, 2, 3},{4, 5, 6}
};

也可以只初始化部分元素,未初始化的元素將被自動設(shè)置為默認值(通常為 0)。例如:

int matrix[2][3] = {{1},{4}
}; // 等價于 {{1, 0, 0}, {4, 0, 0}}

如果在定義二維數(shù)組時不指定第一維和第二維的大小,則編譯器會根據(jù)初始化元素的數(shù)量自動確定它們。例如:

int matrix[][3] = {{1, 2, 3},{4, 5, 6}
}; // 等價于 int matrix[2][3] = {{1, 2, 3}, {4, 5, 6}};

2、訪問與修改

在定義了一個二維數(shù)組之后,可以通過兩個下標運算符 [][] 訪問或修改其中的元素。第一個下標表示行號(從上到下),第二個下標表示列號(從左到右)。例如:

int matrix[2][3] = {{1, 2, 3},{4, 5, 6}
};
std::cout << matrix[0][1] << std::endl; // 輸出第一行第二列的元素
matrix[1][2] = 42; // 修改第二行第三列的元素

注意,在訪問或修改二維數(shù)組中的元素時,必須確保下標在合法范圍內(nèi)。否則會發(fā)生未定義行為。

除了使用下標運算符訪問或修改二維數(shù)組中的元素外,還可以使用指針進行操作。因為在 C++ 中,二維數(shù)組名實際上是一個指向一維數(shù)組的指針,進行解引用后得到的是一個一維數(shù)組首元素的指針,再次進行解引用得到的才是首元素的值。例如:

int matrix[2][3] = {{1, 2, 3},{4, 5, 6}
};
std::cout << **matrix << std::endl; // 輸出第一行第一列的元素
*(*(matrix + 1) + 2) = 42; // 修改第二行第三列的元素

此外,在 C++ 中還可以使用嵌套循環(huán)遍歷二維數(shù)組中的所有元素。例如:

int matrix[2][3] = {{1, 2, 3},{4, 5, 6}
};
for (auto& row : matrix) {for (int n : row) {std::cout << n << std::endl; // 輸出每個元素}
}

三、更高維度的數(shù)組

1、三維數(shù)組

三維數(shù)組是由多個二維數(shù)組組成的數(shù)組。下面的代碼定義了一個包含兩個二維數(shù)組的三維數(shù)組,每個二維數(shù)組都包含兩行三列整數(shù):

int matrix[2][2][3] = {{{1, 2, 3},{4, 5, 6}},{{7, 8, 9},{10, 11, 12}}
};
std::cout << matrix[0][1][2] << std::endl; // 輸出第一個二維數(shù)組中第二行第三列的元素
matrix[1][0][1] = 42; // 修改第二個二維數(shù)組中第一行第二列的元素//遍歷三維數(shù)組
for (auto& twoDArray : matrix) {for (auto& row : twoDArray) {for (int n : row) {std::cout << n << " ";}}
}

三維數(shù)組名實際上是一個指向二維數(shù)組的指針。對它進行一次解引用操作時,將會得到一個二維數(shù)組名,它也是一個指針,指向一維數(shù)組。再次對它進行解引用操作時,會得到一個一維數(shù)組名,它也是一個指針,指向一維數(shù)組首元素。最后對它進行解引用操作,將會得到一維數(shù)組首元素的值,因此這里需要三個解引用運算符。

//用指針來訪問和修改三維數(shù)組
std::cout << *(*(*(matrix + 1) + 0) + 1) << std::endl; // 輸出第二個二維數(shù)組中第一行第二列的元素
*(*(*(matrix + 1) + 0) + 1) = 42; // 修改第二個二維數(shù)組中第一行第二列的元素

在上面的代碼中,matrix 是一個指向二維數(shù)組 {{1, 2, 3}, {4, 5, 6}} 的指針。對它進行一次解引用操作并加上偏移量 1 后,將會得到另一個二維數(shù)組名 {{7, 8, 9}, {10, 11, 12}},再次對它進行解引用操作并加上偏移量 0 ,得到一個一維數(shù)組名 {7, 8, 9}。最后對它進行解引用操作并加上偏移量 1 后,得到一維數(shù)組中第二個元素的值 8

2、高維數(shù)組

四維數(shù)組可以看成由多個三維數(shù)組所組成的數(shù)組,依此類推,高維數(shù)組可以看成由多個低一維數(shù)組所組成的數(shù)組。

http://www.risenshineclean.com/news/30541.html

相關(guān)文章:

  • wordpress 目錄遍歷電腦優(yōu)化設(shè)置
  • 10_10_微信里網(wǎng)站怎么做的seo搜索如何優(yōu)化
  • 漂亮的手機網(wǎng)站模板北京優(yōu)化seo排名優(yōu)化
  • 建網(wǎng)站的要求寧波優(yōu)化關(guān)鍵詞首頁排名
  • 做微商賣產(chǎn)品在哪個網(wǎng)站銷量能好點公司seo營銷
  • 做淘寶需要知道什么網(wǎng)站嗎seo技術(shù)網(wǎng)網(wǎng)
  • 萬網(wǎng)官方網(wǎng)站排名優(yōu)化價格
  • 大連網(wǎng)絡(luò)宣傳網(wǎng)站寧波seo關(guān)鍵詞如何優(yōu)化
  • 本機做web打開網(wǎng)站無法顯示網(wǎng)站seo怎么推排名
  • 做外貿(mào)一般去什么網(wǎng)站找客戶上海推廣服務(wù)
  • 建站網(wǎng)站排行榜北京seo排名收費
  • 網(wǎng)站營銷網(wǎng)畫質(zhì)優(yōu)化app下載
  • 網(wǎng)站修改關(guān)鍵詞雙橋seo排名優(yōu)化培訓(xùn)
  • 江門網(wǎng)站建設(shè)企業(yè)商丘seo排名
  • 網(wǎng)站基本維護seo技術(shù) 快速網(wǎng)站排名
  • 投資做網(wǎng)站廣告媒體資源平臺
  • 國內(nèi)攝影作品網(wǎng)站免費建網(wǎng)站的步驟
  • 東莞網(wǎng)站優(yōu)化中易品牌推廣渠道有哪些
  • 做的網(wǎng)站怎么讓百度收索時搜seo實戰(zhàn)指導(dǎo)
  • 嵐山網(wǎng)站建設(shè)報價山東網(wǎng)絡(luò)推廣網(wǎng)站
  • iis2008如何做網(wǎng)站百度知道合伙人
  • 徐州萬網(wǎng)網(wǎng)站建設(shè)seo優(yōu)化上首頁
  • 利用云服務(wù)器做網(wǎng)站谷歌推廣哪家好
  • 企業(yè)咨詢管理有限公司南昌seo全網(wǎng)營銷
  • 免費網(wǎng)站后臺管理系統(tǒng)看廣告收益最高的軟件
  • 濟南做外貿(mào)網(wǎng)站新冠咳嗽怎么辦
  • 網(wǎng)站怎樣做友情鏈接佛山本地網(wǎng)站建設(shè)
  • 網(wǎng)站開發(fā)看書湖北網(wǎng)站seo
  • 做動漫網(wǎng)站侵權(quán)嗎揚州網(wǎng)絡(luò)優(yōu)化推廣
  • 怎么通過微博做網(wǎng)站外鏈百度seo外包