日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

黑马程序员——数组

發(fā)布時(shí)間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 黑马程序员——数组 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

黑馬程序員——數(shù)組

------- android培訓(xùn)、ios培訓(xùn)、期待與您交流! ----------

?

1、概念:定義數(shù)組時(shí)需要指定這批變量類型、數(shù)組名稱,數(shù)組中包含變量的個(gè)數(shù) 。??

例如:int a[10]??? 表示定義了一個(gè)整形數(shù)組,數(shù)組名為a,此數(shù)組有10個(gè)元素。

2、一維數(shù)組定義數(shù)組基本方式為類型符? 數(shù)組名[常量表達(dá)式]

注意:定義數(shù)組時(shí),用到的“數(shù)組名[常量表達(dá)式]”和引用數(shù)組元素時(shí)用到的“數(shù)組名[下標(biāo)]”在形式上相似,但在含以上和用法上是不同的。如:

????? int a[10];??????? /*定義素組長度為10*/

????? t=a[6];????????? /*引用a數(shù)組中序號為6的元素,此時(shí)6不代表數(shù)組長度*/

如果在數(shù)組名[常量]前有類型名(如int,float,char),則此時(shí)是定義數(shù)組;如果在其前面沒有類型名,則是引用數(shù)組元素

例:引用數(shù)組元素,利用循環(huán)數(shù)組元素a[0]~a[9]賦值為0~9,然后按逆序輸出各元素的值

? ? ? ? ??

1 #include "stdio.h" 2 3 void main() 4 5 { 6 7 int i,a[10];//定義整型變量i和整形數(shù)組a,a有10個(gè)元素 8 9 for(i=0;i<=9;i++)//先后對10個(gè)數(shù)組元素賦值 10 11 a[i]=i; 12 13 for(i=9;i>=0;i--) 14 15 printf("%d",a[i]);//按逆序先后輸出數(shù)組a中的10個(gè)元素 16 17 printf("\n"); 18 19 }

?

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

?

**3、數(shù)組的初始化**

????? 在數(shù)組賦的初值,是按循序賦給相應(yīng)的數(shù)組元素的。如果只是一部分賦初值,那么剩下的元素就會自動設(shè)為0。

??? 數(shù)組:int a[]={1,2,3,4};? //由于有4個(gè)初值,系統(tǒng)自動確定數(shù)組有4個(gè)元素

????? 如果所定義的數(shù)組的長度和初始化的數(shù)據(jù)的個(gè)數(shù)相同,則定義數(shù)組時(shí)可以不寫數(shù)組長度

?

**4、二維數(shù)組**

? 二維數(shù)組的一般式為:類型名 ?數(shù)組名[常量表達(dá)式][常量表達(dá)式];

?? 常量表達(dá)式可以為整形常量,也可以為整型表達(dá)式如a[2-1][2*2-1]

?

**5、二維數(shù)組的初始化**

?? 1)分行給二維數(shù)組賦初值

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

?? 2)可以將所有數(shù)據(jù)寫在一個(gè)大括號,按數(shù)組排列的順序?qū)Ω髟刭x初值

int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12,13};

?? 3)可以對部分元素賦初值(這種方法對非0元素少時(shí)方便使用)

int a[3][4]={{1},{5},{9}};

1 /*假如有10個(gè)數(shù),比較10個(gè)數(shù)的大小并排序 */ 2 3 #include "stdio.h" 4 5 void main() 6 7 { 8 9 int a[10]; 10 11 int i,j,t; 12 13 printf("請輸入10個(gè)數(shù)字:\n"); 14 15 for(i=0;i<10;i++) 16 17 scanf("%d",&a[i]);//先后輸入10個(gè)數(shù)字 18 19 printf("\n"); 20 21 for(j=0;j<9;j++)//進(jìn)行9次循環(huán),實(shí)現(xiàn)9次比較 22 23 for(i=0;i<9-j;i++)//在每一次中進(jìn)行9-j次比較 24 25 if(a[i]>a[i+1])//相鄰兩個(gè)數(shù)比較 26 27 { 28 29 t=a[i];a[i]=a[i+1];a[i+1]=t; 30 31 } 32 33 printf("排序后的數(shù)字:\n"); 34 35 for(i=0;i<10;i++) 36 37 printf("%d\t",a[i]); 38 39 }

?

結(jié)果:

1 /* 將二維數(shù)組a的行與列互換存在另一個(gè)數(shù)組b中 */ 2 3 /*編程思路:將a數(shù)組中的i行j列賦值給b數(shù)組的j行i列,如a[0][1]賦給b[1][0],a[0][2]b[2][0],可以利用雙層循環(huán)來除了,用外循環(huán)控制行數(shù)的變化,內(nèi)循環(huán)控制列的變化*/ 4 5 #include "stdio.h" 6 7 void main() 8 9 { 10 11 int a[2][3]={{1,2,3},{4,5,6}};//定義數(shù)組a并賦值 12 13 int b[3][2],i,j;//定義數(shù)組a 14 15 printf("a的變化\n"); 16 17 for(i=0;i<2;i++)//用i控制行數(shù)的變化 18 19 { 20 21 for(j=0;j<3;j++)//用j控制列數(shù)的變化 22 23 { 24 25 printf("%5d",a[i][j]);//輸出a數(shù)組中的i行j列元素 26 27 b[j][i]=a[i][j];//將a數(shù)組中的i行j列賦值給b數(shù)組的j行i列 28 29 } 30 31 printf("\n"); 32 33 } 34 35 printf("b的變化\n"); 36 37 for(i=0;i<3;i++){ 38 39 for(j=0;j<2;j++) 40 41 printf("%5d",b[i][j]);//輸出b數(shù)組元素 42 43 b[j][i]=a[i][j]; 44 45 printf("\n"); 46 47 } 48 49 }

?

結(jié)果:

?

?

------- android培訓(xùn)、ios培訓(xùn)、期待與您交流! ----------

轉(zhuǎn)載于:https://www.cnblogs.com/gaozp/p/4835786.html

總結(jié)

以上是生活随笔為你收集整理的黑马程序员——数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。