欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

柚子快報(bào)邀請(qǐng)碼778899分享:【C語(yǔ)言】--數(shù)組

柚子快報(bào)邀請(qǐng)碼778899分享:【C語(yǔ)言】--數(shù)組

http://yzkb.51969.com/

?個(gè)人主頁(yè): 起名字真南 ?個(gè)人專(zhuān)欄:【數(shù)據(jù)結(jié)構(gòu)初階】 【C語(yǔ)言】 【C++】

目錄

1 數(shù)組的概念2 一維數(shù)組的創(chuàng)建和初始化2.2 數(shù)組的初始化2.3 數(shù)組類(lèi)型

3 一維數(shù)組的使用3.1 數(shù)組下標(biāo)3.2 數(shù)組的輸入

4 一維數(shù)組在內(nèi)存中的存儲(chǔ)5 sizeof計(jì)算數(shù)組中的元素6 二維數(shù)組6.1 二維數(shù)組的概念6.2 二維數(shù)組的創(chuàng)建

7 二維數(shù)組初始化7.1 不完全初始化7.2 完全初始化7.3 按照行初始化7.4 省略行進(jìn)行初始化

8 二維數(shù)組的使用8.1 二維數(shù)組的下標(biāo)8.2 二維數(shù)組輸出和使用

9 二維數(shù)組在內(nèi)存中的存儲(chǔ)

1 數(shù)組的概念

數(shù)組是一組相同類(lèi)型元素的集合 :

數(shù)組中存放的是一個(gè)或多個(gè)數(shù)據(jù)數(shù)組中元素的個(gè)數(shù)不能為0數(shù)組中存放的數(shù)據(jù)他們的類(lèi)型都是相同的。 數(shù)組分為一維數(shù)組和多維數(shù)組,其中多維數(shù)組大部分指的是二維數(shù)組

2 一維數(shù)組的創(chuàng)建和初始化

一維數(shù)組創(chuàng)建的基本語(yǔ)法如下:

type arr_name[常量];

存放在數(shù)組中的值被稱(chēng)為數(shù)組元素,數(shù)組在創(chuàng)建的時(shí)候可以指定數(shù)組的大小和數(shù)組的元素類(lèi)型。

type:是數(shù)組的元素類(lèi)型可以是int 、char 、double 、float、還可以是自定義類(lèi)型arr_name:是數(shù)組的名字有意義即可[] : 里面存放的是數(shù)組元素的個(gè)數(shù),里面存放的是常量值

比如我們想創(chuàng)建某個(gè)班級(jí)里面10個(gè)學(xué)生的成績(jī),我們可以創(chuàng)建如下數(shù)組:

int manth[20];

2.2 數(shù)組的初始化

//完全初始化

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

//不完全初始化

int arr_1[5] = {1}; //第一個(gè)元素初始化為1,其余元素初始化為0

//錯(cuò)誤初始化

int arr_2[5] = {1,2,3,4,5,6};//初始化項(xiàng)大于5

2.3 數(shù)組類(lèi)型

數(shù)組算是一種自定義類(lèi)型,去掉數(shù)組名剩下的就是數(shù)組類(lèi)型

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

char ch[6] = {'a','b','c','d','e','\0'}

arr1 的數(shù)組類(lèi)型就是 int [5] ch 的數(shù)組類(lèi)型就是 char [6]

3 一維數(shù)組的使用

3.1 數(shù)組下標(biāo)

C語(yǔ)言規(guī)定數(shù)組是有下標(biāo)的,下標(biāo)從0開(kāi)始,假設(shè)數(shù)組有n個(gè)元素,最后一個(gè)元素的下標(biāo)就是n-1。

int arr[10] = {1,2,3,4,5,6,7,8,9,10}

在C語(yǔ)言中提供了一個(gè) [] 操作符,我們可以通過(guò)數(shù)組的下標(biāo)直接訪問(wèn)這個(gè)元素如果我們想要訪問(wèn)7這個(gè)元素,它的下標(biāo)是6,那么就可以通過(guò)數(shù)組名[]的方式直接調(diào)用。

#include

int main()

{

int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

for (int i = 0; i < 10; i++)

{

printf("%d ", arr[i]);

}

return 0;

}

運(yùn)行結(jié)果: 每次打印數(shù)組數(shù)據(jù)的時(shí)候通過(guò) arr[下標(biāo)] 的方式來(lái)直接調(diào)用數(shù)組中的元素。

3.2 數(shù)組的輸入

如果我們想通過(guò)控制臺(tái)手動(dòng)向數(shù)組中輸入數(shù)據(jù)時(shí)應(yīng)該怎么辦呢?

#define _CRT_SECURE_NO_WARNINGS 1

#include

int main()

{

int arr1[5] = { 0 };

for (int i = 0; i < 5; i++)

{

scanf("%d", &arr1[i]);

}

for (int i = 0; i < 5; i++)

{

printf("%d ", arr1[i]);

}

return 0;

}

運(yùn)行結(jié)果:

4 一維數(shù)組在內(nèi)存中的存儲(chǔ)

依次打印數(shù)組中每個(gè)元素的地址:

int main()

{

int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

for (int i = 0; i < 10; i++)

{

printf("%p\n", &arr[i]);

}

return 0;

}

運(yùn)行結(jié)果: 可以看到在內(nèi)存中他們的存儲(chǔ)空間是連續(xù)的10個(gè)空間,因?yàn)閿?shù)組中存儲(chǔ)的元素時(shí)int類(lèi)型所以每個(gè)數(shù)據(jù)的大小都是4個(gè)字節(jié)。 我們可以打開(kāi)另一個(gè)內(nèi)存窗口進(jìn)行觀察:

5 sizeof計(jì)算數(shù)組中的元素

sizeof是C語(yǔ)言中的關(guān)鍵字,可以計(jì)算類(lèi)型和變量的大小,也可以計(jì)算數(shù)組中元素的大小。

int main()

{

int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

int arr_size1 = sizeof(arr);

int arr_size2 = sizeof(arr[1]);

printf("arr_size1 = %d\n", arr_size1);

printf("arr_size2 = %d\n", arr_size2);

return 0;

}

運(yùn)行結(jié)果: 可以看到arr_size1時(shí)整個(gè)數(shù)組元素的大小因?yàn)閿?shù)組元素的類(lèi)型是int,并且有十個(gè)數(shù)據(jù)所以整個(gè)數(shù)組的大小是40,而arr[1]使用了[]操作符得到的是數(shù)組下標(biāo)為1的數(shù)據(jù),他的類(lèi)型是int大小是四個(gè)字節(jié)。 接下來(lái)我們就可以計(jì)算數(shù)組中的元素個(gè)數(shù):

int main()

{

int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

int arr_size1 = sizeof(arr);

int arr_size2 = sizeof(arr[1]);

printf("arr_size1 = %d\n", arr_size1);

printf("arr_size2 = %d\n", arr_size2);

int num = sizeof(arr) / sizeof(arr[1]);

printf("數(shù)組中元素的個(gè)數(shù)是 :%d",num);

return 0;

}

運(yùn)行結(jié)果: 這里的結(jié)果是10,表示數(shù)組中有十個(gè)元素。

6 二維數(shù)組

6.1 二維數(shù)組的概念

二維數(shù)組就是將一維數(shù)組作為自己的數(shù)組元素的數(shù)組。而三維數(shù)組就是以二維數(shù)組作為自己的數(shù)組元素,三維及以上數(shù)組被稱(chēng)為多維數(shù)組。

6.2 二維數(shù)組的創(chuàng)建

type arr_name[常量1][常量2];

int arr[3][4];

char ch[5][6];

int 是二維數(shù)組中的變量類(lèi)型3/5 表示創(chuàng)建的二維數(shù)組有3/5行4/6 表示有4/6列,即每一行有4/6個(gè)元素arr/ch 則是數(shù)組名有意義即可

7 二維數(shù)組初始化

在創(chuàng)建變量和數(shù)組的時(shí)候,給定一些值稱(chēng)為初始化。

7.1 不完全初始化

不完全初始化:

int main()

{

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

int arr2[3][4] = { 0 };

return 0;

}

初始化結(jié)果:

7.2 完全初始化

完全初始化 :

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

初始化結(jié)果:

7.3 按照行初始化

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

初始化結(jié)果 :

7.4 省略行進(jìn)行初始化

在定義二維數(shù)組的時(shí)候可以把第一個(gè)變量省略也就是省略行數(shù),但是每一行所有的元素個(gè)數(shù)(列數(shù))不能省略

int arr5[][3] = { 1,2,3,4,5,6,7,8 };

初始化結(jié)果:

8 二維數(shù)組的使用

8.1 二維數(shù)組的下標(biāo)

C語(yǔ)言規(guī)定二維數(shù)組的行和列的下標(biāo)都是從0開(kāi)始的

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

下標(biāo):

8.2 二維數(shù)組輸出和使用

int main()

{

int arr[3][4] = { 0 };

//行

for (int i = 0; i < 3; i++)

{

// 列

for (int j = 0; j < 4; j++)

{

scanf("%d", &arr[i][j]);

}

}

//打印輸出

for (int i = 0; i < 3; i++)

{

for (int j = 0; j < 4; j++)

{

printf("%d ", arr[i][j]);

}

printf("\n");

}

return 0;

}

初始化結(jié)果 :

9 二維數(shù)組在內(nèi)存中的存儲(chǔ)

int arr[3][4] = { 0 };

內(nèi)存展示: 可以看到和一維數(shù)組一樣每個(gè)地址之間相差四個(gè)字節(jié),第一行的最后一個(gè)和第二行的第一個(gè)數(shù)組元素也是連續(xù)的并且相差了四個(gè)字節(jié)。

柚子快報(bào)邀請(qǐng)碼778899分享:【C語(yǔ)言】--數(shù)組

http://yzkb.51969.com/

精彩文章

評(píng)論可見(jiàn),查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19552051.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄