陣列部分初始化
int arr[12]
=;for(
int i=
0;i<12;
++i)
指定下標的值被賦值,其他的值都是0。這是c99語法。
陣列的大小
char carr[12]
;int iarr[12]
;double farr[12]
;printf
("carr = %d\n"
,sizeof
(carr));
//12
printf
("iarr = %d\n"
,sizeof
(iarr));
//48
printf
("farr = %d\n"
,sizeof
(farr));
//96
sizeof給出整個陣列所佔據的內容的大小。陣列大小=元素大小*陣列個數。
二維陣列
二位陣列可以省略第一維大小,第二維不能省略。
int days[
3]=;
多維陣列int days[
4][3
]=,// 平年
// 閏年};
printf
("平年二月天數為%d\n"
,days[0]
[0][
1]);
// 平年第一季度第二個月 28
printf
("閏年二月天數為%d\n"
,days[1]
[0][
1]);
// 閏年第一季度第二個月 29
多維陣列初始化只能第乙個維度可以省略。
一維陣列用法
no.操作
下標指標
1第i個元素值
arr[i]
*(arr+i)
2第i個元素位址
&arr[i]
arr+i
二維陣列
no.操作
下標指標
1第i行第j列元素值
arr[i][j]
((arr+i)+j)
2第i行第j列元素位址
&arr[i][j]
*(arr+i)+j
在二維陣列中a[i]就是乙個一維陣列。
#include
int main ();
printf
("days[0]\t\t = %p\n&days[0][0]\t = %p\n"
,days[0]
,&days[0]
[0])
;printf
("days[1]\t\t = %p\n&days[1][0]\t = %p\n"
,days[1]
,&days[1]
[0])
;printf
("days[2]\t\t = %p\n&days[2][0]\t = %p\n"
,days[2]
,&days[2]
[0])
;printf
("days[3]\t\t = %p\n&days[3][0]\t = %p\n"
,days[3]
,&days[3]
[0])
;return0;
此輸出結果每行相同
}
二維陣列
元素下標 = 當前行序號*列元素個數 + 當前列序號
三維陣列
元素下標 = 當前面序號 * 面元素個數 + 當前行序號 * 列元素個數 + 當前列序號
int i,j;
int n =24;
int arr[n]
;for
(int i=
0;i++i)
int pages =2;
int rows =4;
int cols =3;
for(i=
0;i++i)
printf
("\n");
}printf
("\n");
}//此程式執行出來是兩個二維陣列
星期幾的計算方法
w=(d + 2m + 3(m+1)/5 + y + y/4 - y/100 + y/400) % 7
說明公式中要把1月和2月分別當成上一年的13月和14月處理。
例如:2023年1月4日要換成 2023年13月4日帶入公式。
公式對應的與蔡勒公式有點區別:0為星期1,……,6為星期日。
C語言入門 陣列
今天十月一日,上午看閱兵激情澎湃,但是下午還是要繼續寫c語言,前面的這塊很簡單 int number 100 scanf d number i 型別 變數名稱 元素數量 元素數量必須是整數 陣列特點 所有的元素具有相同的資料型別 一旦建立,就不能改變大小 陣列中的元素在記憶體中是連續以此排序的 寫乙...
C語言入門學習(七)陣列
1 陣列宣告 在 c 中要宣告乙個陣列,需要指定元素的型別和元素的數量,如下所示 type arrayname arraysize 這叫做一維陣列。arraysize 必須是乙個大於零的整數常量,type 可以是任意有效的 c 資料型別。例如,要宣告乙個型別為 double 的包含 10 個元素的陣...
c 陣列擷取 C語言零基礎入門 陣列 04
本節課的任務是 我們之前講解的一維陣列與二維陣列 都是基於儲存的內容是int型別的資料。我們說過 同乙個陣列中可以存放任意簡單型別的資料,比如 乙個陣列中可以存放的資料型別都是 int,float,double,char等等。char型別的陣列就被稱之為字元陣列,因為他的每乙個陣列索引位置存放的資料...