c語言數組知識點
C語言數組精選知識點
一維數組
1、一般形式:類型說明符 數組名[常量表達式];
例如: int a[10]; 元素為a[0]----a[9].
2、常量表達式中不允許包含變量,可以包含常量或符號常量。
3、數組元素下標可以是任何整型常量、整型變量或任何整型表達式。
4、可以對數組元素賦值,數組元素也可以參與運算,與簡單變量一樣使用。
5、使用數值型數組時,不可以一次引用整個數組,只能逐個引用元素。
6、需要整體賦值時只可以在定義的同時整體賦值。
如 int a[10]={0,1,2,3,4,5,6,7,8,9};正確。
int a[10]; a[10]={0,1,2,3,4,5,6,7,8,9};錯誤。
7、可以只給一部分元素賦值。
例如:
int a[10]={5,8,7,6};后面沒有賦值的元素值默認為0。
8、對全部數組元素賦值時可以不指定數組長度,
例如:
int a[10]={0,1,2,3,4,5,6,7,8,9};可以寫成 int a[]={0,1,2,3,4,5,6,7,8,9};
但是,既不賦初值,也不指定長度是錯誤的。
例如:int a[];錯誤。
二維數組
1、一般形式:類型說明符 數組名[常量表達式1][常量表達式2];
例如:
int a[3][4];可以看成是包含3個一維數組,每個一維數組里包含4個元素。
一共3*4=12個元素。
所有元素為
a[0][0] , a[0][1],
a[0][2],a[0][3]
a[1][0] , a[1][1],
a[1][2],a[1][3]
a[2][0] , a[2][1],
a[2][2],a[2][3]
2、與一維數組一樣元素下標可以是是任何整型常量、整型變量或任何整型表達式。
3、需要整體賦值時只可以在定義的同時整體賦值。
例如: int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};正確。
int a[3][4]; a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};錯誤。
4、可以把所有數據寫在一個花括號內。
例如: int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};正確。
5、可以只對部分元素賦值。
例如:
int a[3][4]={{1},{5},{9}};其余未賦值的元素默認為0。
int a[3][4]={{1},{5,6}};可以看成是
int a[3][4]={{1,0,0,0},{5,6,0,0},{0,0,0,0}};
6、對全部數組元素賦值時可以省略第一維長度,第二維不可以省略。
例如: a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
可以寫成a[][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
或者a[][4]={1,2,3,4,5,6,7,8,9,10,11,12};
字符數組
1、定義:char a[10];字符數組a長度為10。每個元素只能存放一個字符。
例如: a[0]='h';a[1]='a';a[2]='p';
2、初始化:
char a[]={'h','a','p','p','y'};
char a[]="happy";
char a[]={"happy"};
注意,因為字符串結尾自動加'\0',所以char a[]="happy";長度為6,不是5。
3、C語言中沒有字符串變量,字符串的輸入、存儲、處理和輸出等必須通過字符數組實現。
4、字符串的輸入。
scanf();可以用%C逐個字符輸入
比如char a[6];for(i=0;i<6;i++) scanf("%c",&a[i]);
可以用%S以字符串的形式輸入,比如char a[6];scanf("%s",a);
注意,a前不用加&,因為a是數組名,已經代表了數組首地址。
注意:以%S輸入時,以第一個非空白字符開始,終止于第一個空白字符。
比如:輸入How are you時。只輸出How.
gets();作用為輸入一個字符串。與scanf();功能一致,
但空格和回車都存放在數組中,最后自動加入‘\0’
不會出現上面輸出不全的情況。
調用方式為:gets(數組名);需要包含頭文件“stdio.h”.
5、字符串的輸出。
printf();可以使用%C逐個字符輸出,
比如:char a[6];for(i=0;i<6;i++) printf("%c",a[i]);
可以用%S以字符串的形式輸出,
比如char a[6];printf("%s",a); puts();輸出一個字符串,結尾自動換行。
調用形式:puts(字符數組名或字符串常量);需包含頭文件“stdio.h”
常用字符串處理函數(以下函數需要頭文件“string.h”)
1、strlen()作用是測試字符串長度。
這里不包括‘\0’.使用形式strlen(數組名或字符串常量)
2、strcat()作用是連接兩個字符串。調用方式strcat(字符數組1名,字符數組2名);合并后的字符串存放在字符數組1中。
3、strcmp()比較兩個字符串是否相等。調用方式strcmp(字符串1,字符串2);相等時值為0。1>2時為正數。1<2時為負數。
4、strcpy()復制字符串。調用方式strcpy(字符數組1,字符串2);
2的內容復制到1中。1只能是字符數組名。
看了“c語言數組知識點”的還看了:
1..Net基礎知識點解答
2..Net知識點
3.初二數學基本知識匯總
4.八年級上冊數學期末復習要點
5..Net知識點