C語言基礎學習摘要 陣列和字串處理函式

2021-09-17 08:55:05 字數 2282 閱讀 7421

在c語言中,陣列屬於構造資料型別,通常按照陣列元素的型別不同,可將陣列分為數值陣列、字元陣列、指標陣列、結構陣列等各種類別。下面我們將主要介紹數值陣列和字元陣列。

陣列初始化賦值是指在陣列定義時給陣列元素賦予初值。陣列初始化是在編譯階段進行

的。這樣將減少執行時間,提高效率。

一維陣列的初始化:

一維陣列的初始化有三種形式:

可以只給部分元素賦初值,當{}中值的個數少於元素個數時,只給前面部分賦值,後面的自動賦0值;

例如:int a[10]=;

表示只給 a[0]~a[4]5 個元素賦值,而後 5 個元素自動賦 0 值。

只能給元素逐個賦值,不能給陣列整體賦值。

例如給十個元素全部賦 1 值,只能寫為:

int a[10]=;

而不能寫為:

int a[10]=1;

如給全部元素賦值,則在陣列說明中, 可以不給出陣列元素的個數。

例如:int a[5]=;

可寫為:

int a=;

二維陣列的初始化:

二維陣列的初始化有兩種形式:

按行分段賦值可寫成:

int a[2][3]=,}

按行連續賦值可寫成:

int a[2][3]=

字元陣列的初始化:字串輸出函式puts():

格式為:puts(字元陣列名);

功能為把字串顯示在螢幕上,通常用printf代替puts。

字串輸入函式gets():

格式為:gets(字元陣列名);

功能為得到輸入字串,等同於scanf函式。

字串連線函式strcat():

格式為:strcat(字元陣列名1,字元陣列名2)

功能為把字元陣列2中的字串連線到字元陣列1後面。

字串拷貝函式strcpy():

格式為:strcpy(字元陣列名1.字元陣列名2);

功能為字元陣列2拷貝到字元陣列1中,結束標誌』\0』也一同拷貝。

注意:複製就是用新的內容覆蓋原有的內容,包括結束標誌,所以以字串格式輸出時,就只是輸出被複製的內容,碰到結束標誌時就結束了,原來沒被覆蓋的字元是不顯示的。但以字元格式輸出時,就不會遇到結束標記就結束,因為結束標記也是字元,所以原來沒被覆蓋的字元也會顯示的.

字串比較函式strcmp():

格式為:strcmp(字串1,字串2);

功能為按照ascii碼順序比較兩個陣列中的字串,並且由函式返回值返回比較結果。逐個比較兩個串中對應的字元,字元大小按照ascii碼值確定,從左向右比較,如果遇到不同字元,所遇第一對不同字元的大小關係就確定了兩個字串的大小關係,如果未遇到不同字元而某個字串首先結束,那麼這個字串是較小的,否則兩個字串相等。

如:字串1=字串2 返回值=0;

字串1>字串2 返回值》0;

字串1《字串2 返回值<0;

測字串長度函式strlen();

格式:strlen(字串);

功能為測字串的實際長度(不含字串結束標誌』\0』)並作為返回值。

字串大小寫轉換函式strlwr()和strupr();

格式:strlwr(字串)和strupr(字串);

功能:strlwr()將字串大寫改為小寫,strupr()將小寫改為大寫。

語法:scanf(「格式控制字串」,變數位址列表);

scanf(字元陣列名或指標);

scanf不能接受空格,tab,回車等,gets可以接受,gets用』\0』替代』\n』。

puts在輸出字串時,會將』\0』自動轉換成』\n』,也就是說,puts方法輸出完字串後自動換行。

兩者表示從終端輸入或輸出單個字元,

格式為:getchar();和putchar(『a』);

getchar()只從緩衝區讀取乙個字元;

putchar()輸出0~127之間的整型數時,輸出的結果是對應的ascii碼,當輸出為第乙個先定義好的字元型變數時,輸出該變數所指向的字元(如字元超出8位,則取其低8位輸出)。

C語言基礎 陣列和字串

本文介紹了c語言陣列和字串的基本知識。什麼是陣列 陣列,從字面上看,就是一組資料的意思,沒錯,陣列就是用來儲存一組資料的 陣列的特點 只能存放一種型別的資料,比如int型別的陣列 float型別的陣列 裡面存放的資料稱為 元素 陣列的定義 定義 宣告陣列的型別 宣告陣列的元素個數 需要多少儲存空間 ...

c語言基礎 字串陣列

在 c 語言中,字串實際上是使用null字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的使用字串陣列宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。char greeting ...

C語言字元陣列和字串

用來存放字元的陣列稱為字元陣列,例如 char a 10 一維字元陣列 char b 5 10 二維字元陣列 char c 20 給部分陣列元素賦值 char d 對全體元素賦值時可以省去長度 字元陣列實際上是一系列字元的集合,也就是 字串 string 在c語言中,沒有專門的字串變數,沒有stri...