陣列及字串

2021-08-21 17:10:22 字數 1739 閱讀 9674

特點:同一陣列中的所有元素都屬於同一種資料型別,陣列元素用陣列名和相應的下標來確定。

定義格式:型別名 陣列名[常量表示式];

注意:

引用格式:陣列名[下標]

注意:

初始化格式:型別名 陣列名[常量表示式]=;

注意:

定義格式:型別名 陣列名 [行數-常量表示式][列數-常量表示式2]

注意:

引用:陣列名[行下標][列下標]

注意:

初始化:

將初值依序放在一對中,與一維初始化格式相同

定義二維陣列的同時,按行初始化每一行初值均用一對括起,採用巢狀的格式。

注意:

定義陣列的同時給陣列初始化,則可以省略行數,但列數不能省略。

c語言中沒有字串變數,如何儲存?

字元陣列來存放

字元型指標變數

初始化:與其他陣列的初始化方式一樣,只是其初始值是字元。

字串:因為字串最後都有乙個字串結束符(『\0』),所以用字元陣列來存放字串時一定要有乙個元素存放結束符『\0』

注意:

char a[ ]="abcd"; (雙引號加'\0')

char a[ ]=;

char a[ ]='(單引號需要自己加『\0』)

字串儲存(賦值)四種方法

方法1:scanf();鍵盤輸入

char a[10];  scanf("%s",a); 陣列名本身就是位址

scanf("%s",&a);  非法

注:用%s格式輸入時,遇到空格符或回車符則自動結束輸入

scanf(「%s,%s」,a,b)不能正確讀取資料

printf()輸出

方法2:gets()鍵盤輸入

格式:#include

gets(字元陣列)

功能:讀取乙個字串賦給字元陣列

注:(1)用該函式輸入字元時,只有遇到回車符系統才結束讀取字元

(2)不論是用%s還是gets()在輸入時均不需要輸入雙引號,若輸入時用了雙引號則雙引號也作為字串的有效字元。

puts()輸出

格式:#include

puts(字元陣列或字串常量)

功能:在螢幕上輸出字元陣列中的字元

注:用該函式輸出與%s格式輸出一樣,只是該函式將『\0』轉成『\n』輸出

方法3:初始化

方法4:strcpy()

字串處理函式

strcat()

格式:#include

strcat(字元陣列1,字元陣列2);

功能:連線

返回的是第乙個陣列的首位址

strcpy()拷貝

格式:#include

strcpy(字元陣列1,字元陣列2)

strcmp()比較

格式:#include

strcmp(字元陣列1,字元陣列2)

功能:函式返回值相同位置。不同字元的ascll碼差值

strcmp(「abc」,「abfc」);=>-3

注:不能用關係運算子直接進行字串大小或字元陣列大小的比較

strlen()

格式:#include

strlen(字元陣列)

功能:求出字元陣列的實際長度(不包括結束符)

陣列及字串

陣列是同一組資料的集合 陣列的定義格式 兩種 int arr new int 3 int arr 運算元組常見問題 陣列的常見操作 public int getarraymax int arr return max public int getarraymax int arr return arr ...

Leetcode 字串及陣列

目錄 區間類問題 分割陣列 字串 原地旋轉矩陣 48.旋轉影象 54.螺旋矩陣 leetcode區間類問題 5458.字串的好分割數目 本題還是需要觀察一下,才能入手的 不能整行的換,下面是本題 思路的示意圖 兩個兩個換,才能整個完成選擇 class solution 左列和底行 for int i...

字元陣列 字串及常量字串具體解釋

c語言中 void main 執行結果 p1和p2所指向的常量字串內容同樣並且位址也同樣。個人理解由於常量字串位於靜態區,p1指向的 abcd 已經分配了空間,p2所指向的常量字串與p1指向的常量字串同樣。所以不須要另外開闢空間。有些文章說,這取決於編譯器。常量字串內容不可更改。但能夠通過下標和移動...