?? 24.htm
字號:
<P> 一、一維數組
<BR> 一維數組的說明格式是:
<BR> 類型 變量名[長度];
<BR> 類型是指數據類型, 即每一個數組元素的數據類型, 包括整數型、浮點型、字
<BR>符型、指針型以及結構和聯合。
<BR> 例如:
<BR> int a[10];
<BR> unsigned long a[20];
<BR> char *s[5];
<BR> char *f[];
<P> 說明:
<BR> 1. 數組都是以0作為第一個元素的下標, 因此, 當說明一個int
a[16] 的整型
<BR>數組時, 表明該數組有16個元素, a[0]~a[15], 一個元素為一個整型變量。
<BR> 2. 大多數字符串用一維數組表示。數組元素的多少表示字符串長度,
數組名
<BR>表示字符串中第一個字符的地址, 例如在語句char str[
8] 說明的數組中存入
<BR>"hello"字符串后, str表示第一個字母"h"所在的內存單元地址。str[0] 存放的是
<BR>字母"h"的ASCII碼值, 以此類推, str[4]存入的是字母"o"的ASCII碼值, str[5]則
<BR>應存放字符串終止符'\0'。
<BR> 3. Turbo C2.0對數組不作邊界檢查。例如用下面語句說明兩個數組
<BR> char str1[5], str2[6];
<BR> 當賦給str1一個字符串"ABCDEFG"時, 只有"ABCDE"被賦給,
"E" 將會自動的賦
<BR>給str2, 這點應特別注意。
<P> 三、多維數組
<BR> 多維數組的一般說明格式是:
<BR> 類型 數組名[第n維長度][第n-1維長度]......[第1維長度];
<BR> 這種說明方式與BASIC、FORTRAN等語言中多維數組的說明不一樣。
<BR> 例如:
<BR> int m[3][2];
/*定義一個整數型的二維數組*/
<BR> char c[2][2][3]; /*定義一個字符型的三維數組*/
<BR> 數組m[3][2]共有3*2=6個元素, 順序為:
<BR> m[0][0], m[0][1], m[1][0], m[1][1],
m[2][0], m[2][1];
<BR> 數組c[2][2][3]共有2*2*3=12個元素, 順序為:
<BR> c[0][0][0], c[0][0][1], c[0][0][2],
<BR> c[0][1][0], c[0][1][1], c[0][1][2],
<BR> c[1][0][0], c[1][0][1], c[1][0][2],
<BR> c[1][1][0], c[1][1][1], c[1][1][2],
<BR> 數組占用的內存空間(即字節數)的計算式為:
<BR> 字節數=第1維長度*第2維長度*...*第n維長度*該數組數據類型占用的字節數
<P> 4.5 變量的初始化和賦值
<P> 一、變量的初始化
<BR> 變量的初始化是指變量在被說明的同時賦給一個初值。Turbo
C2.0中外部變量
<BR>和靜態全程變量在程序開始處被初始化, 局部變量包括靜態局部變量是在進入定義
<BR>它們的函數或復合語句時才作初始化。所有全程變量在沒有明確的初始化時將被自
<BR>動清零, 而局部變量和寄存器變量在未賦值前其值是不確定的。
<BR> 對于外部變量和靜態變量, 初值必須是常數表達式, 而自動變量和寄存器變量
<BR>可以是任意的表達式, 這個表達式可以包括常數和前面說明過的變量和函數。
<BR> 1. 單個變量的初始化
<BR> 例如:
<BR> float f0, f1=0.2;/*定義全程變量, 在初始化時f0被清零,
f1被賦0.2*/
<BR> main()
<BR> {
<BR> static int i=10,
j; /*定義靜態局部變量, 初始化時i被賦10, j不確
<BR>
定*/
<BR> int k=i*5;
/*定義局部變量, 初始化時k被賦10*5=50*/
<BR> char c='y';
/*定義字符型指什變量并初始化*/
<BR> .
<BR> .
<BR> .
<BR> }
<P> 2. 數組變量的初始化
<BR> 例如:
<BR> main()
<BR> {
<BR> int p[2][3]={{2,
-9, 0}, {8, 2, -5}}; /*定義數組p并初始化/*
<BR> int m[2][4]={{27,
-5, 19, 3}, {1, 8, -14, -2}};/*定義數組m并初
<BR>
始化*/
<BR> char *f[]={'A',
'B', 'C'}; /*定義數組f并初始化*/
<BR> .
<BR> .
<BR> .
<BR> }
<BR> 從上例可以看出: Turbo C2.0中數組進行初始化有下述規則:
<BR> (1) 數組的每一行初始化賦值用"{}"并用","分開, 總的再加一對"{}"括起來,
<BR>最后以";"表示結束。
<BR> (2) 多維數組的存儲是按最右維數的變量變化最快的原則。
<BR> (3) 多維數組存儲是連續的, 因此可以用一維數組初始化的辦法來初始化多維
<BR>數組。
<BR> 例如:
<BR> int x[2][3]={1, 2, 3, 4, 5, 6};/*用一維數組來初始化二維數組*/
<BR> (4) 對數組初始化時, 如果初值表中的數據個數比數組元素少,
則不足的數組
<BR>元素用0來填補。
<BR> (5) 對指針型變量數組可以不規定維數, 在初始化賦值時,
數組維數從0 開始
<BR>被連續賦值。
<BR> 例如:
<BR> char *f[]={'a', 'b', 'c'};
<BR> 初始化時將會給3個字符指針賦值, 即: *f[0]='a', *f[1]='b',
*f[2]='c'。
<P> 3. 指針型變量的初始化
<BR> 例如:
<BR> main()
<BR> {
<BR> int *i=7899;
/*定義整型數指針變量并初始化*/
<BR> float *f=3.1415926;
/*定義浮點數指針變量并初始化*/
<BR> char *s="Good";
/*定義字符型指針變量并初始化*/
<BR> .
<BR> .
<BR> .
<BR> }
<P> 二、變量的賦值
<BR> 變量賦值是給已說明的變量賦給一個特定值。
<BR> 1. 單個變量的賦值
<BR> (1) 整型變量和浮點變量
<BR> 這兩種變量采用下列格式賦值
<BR> 變量名=表達式;
<BR> 例如:
<BR> main()
<BR> {
<BR> int a, m;
/*定義局部整型變量a, m*/
<BR> float n;
/*定義局部浮點變量f*/
<BR> a=100, m=20;
/*給變量賦值*/
<BR> n=a*m*0.1;
<BR> .
<BR> .
<BR> .
<BR> }
<P> 說明:
<BR> Turbo C2.0中允許給多個變量賦同一值時可用連等的方式。
<BR> 例如:
<BR> main()
<BR> {
<BR> int a, b, c;
<BR> a=b=c=0;
/*同時給a,b,c賦值*/
<BR> .
<BR> .
<BR> .
<BR> }
<P> (2) 字符型變量
<BR> 字符型變量可以用三種方法賦值。
<BR> 例如:
<BR> main()
<BR> {
<BR> char a0, a1,
a2; /*定義局部字符型變量a0, a1, a2*/
<BR> a0='b';
/*將字母b賦給a0*/
<BR> a1=50;
/*將數字2(十進制ASCII值為50賦給a1*/
<BR> a2='\x0d';
/*將回車符賦給a2*/
<BR> .
<BR> .
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -