C語言程式設計譚浩強版 九

2021-07-16 00:04:13 字數 2110 閱讀 3699



7.1 一維陣列的定義和引用

7.1.1 一維陣列的定義方式

一維陣列的定義方式為:型別說明符  陣列名  [常量表示式];

其中:

型別說明符是任一種基本資料型別或構造資料型別。

陣列名是使用者定義的陣列識別符號。

方括號中的常量表示式表示資料元素的個數,也稱為陣列的長度。

例如:int a[10];  整型陣列a,有10個元素。

float b[10],c[20]; 說明實型陣列b,有10個元素,實型陣列c,有20個元素。

char ch[20]; 說明字元陣列ch,有20個元素。

1) 、陣列的型別實際上是指數組元素的取值型別。對於同乙個陣列,

其所有元素的資料型別都是相同的。

2) 、陣列名的書寫規則應符合識別符號的書寫規定。

3)、 陣列名不能與其它變數名相同。

4) 、方括號中常量表示式表示陣列元素的個數,如a[5]表示陣列a有 5個元素。

但是其下標從0開始計算。因此5個元素分別為a[0],a[1],a[2],a[3],a[4]。

5) 、不能在方括號中用變數來表示元素的個數, 但是可以是符號常數或常量

表示式。

例如:#define fd 5

b[7+fd] 合法

int n=5;

int a[n];

不合法6) 、允許在同乙個型別說明中,說明多個陣列和多個變數。

例如:int a,b,c,d,k1[10],k2[20];

7.1.2 一維陣列元素的引用

陣列元素的一般形式為:陣列名[下標]

其中下標只能為整型常量或整型表示式。

例如: a[5] ,a[i+j], a[i++]

例7.1

#includeint main(void)

例7.2

#includeint main(void)

for(i=9;i>0;i--)

}

7.1.3 一維陣列的初始化

1)、在定義陣列時對陣列元素賦以初值

例如:int a[10] =

3)、如果想使乙個陣列中全部元素值為0,可以寫成int a[10] = ;

4)、在對全部陣列元素賦初值時,可以不指定陣列長度

例如:int a[ ] = ;

7.1.4 一維陣列程式舉例

例7.4

#includeint main(void)

本例程式中第乙個for語句逐個輸入10個數到陣列a中。 然後把a[0]送入max中。

在第二個for語句中,從a[1]到a[9]逐個與max中的內容比較,若比max的值大,

則把該下標變數送入max中,因此max總是在已比較過的下標變數中為最大者。

比較結束,輸出max的值。

例7.5

#includeint main(void)

{ int i,j,p,q,s,a[10];

printf("input 10 numbers:\n");

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

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

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

{ p=i;

q=a[i];

for(j=i+1;j<10;j++)

if(q

本例程式中用了兩個並列的for迴圈語句,在第二個for 語句中又巢狀了乙個迴圈語句。

第乙個for語句用於輸入10個元素的初值。第二個for語句用於排序。本程式的排序採

用逐個比較的方法進行。在i次迴圈時,把第乙個元素的下標i賦於p,而把該下標變數

值a[i]賦於q。然後進入小迴圈,從a[i+1]起到最後乙個元素止逐個與a[i]作比較,有比

a[i]大者則將其下標送p,元素值送q。一次迴圈結束後,p即為最大元素的下標,q則

為該元素值。若此時i≠p,說明p,q值均已不是進入小迴圈之前所賦之值,則交換a[i]和

a[p]之值。 此時a[i]為已排序完畢的元素。輸出該值之後轉入下一次迴圈。對i+1以後

各個元素排序。

C語言程式設計譚浩強版 一

本章的一些概況這裡就不說了,直接進入細節的學習!3.1 c的資料型別 資料型別分為 基本型別 構造型別 指標型別 空型別 基本型別又分為 整型 字元型 實型 浮點型 又分為單精度型 雙精度型 列舉型別 構造型別又分為 陣列型別 結構體型別 共用體型別 3.2 常量和符號常量 在程式執行過程中,其值不...

C語言程式設計譚浩強版 三

3.5 字元型資料 3.5.1 字元常量 字元常量是用單引號括起來的乙個字元。例如 a b 都是合法字元常量。在 語言中,字元常量有以下特點 1 字元常量只能用單引號括起來,不能用雙引號或其它括號。2 字元常量只能是單個字元,不能是字串。3 字元可以是字符集中任意字元。但數字被定義為字元型之後就不能...

C語言程式設計譚浩強版 四

3.6 變數賦初值 語言程式中可有多種方法為變數提供初值。本小節先介紹在作變數定義的同時給變數賦以 初值的方法。這種方法稱為初始化。變數初始化不是在編譯階段完成的,而是在程式執行 時執行本函式時賦予初值的。在變數定義中賦初值的一般形式為 型別說明符變數1 值1,變數2 值2,例如 int a 3 i...