C語言學習筆記 7

2021-09-05 23:18:14 字數 832 閱讀 3066

1. 指標和陣列

這個在最初學習c語言時就學過了,在此只是簡單提下。看一段**:

#define size 10

int main (void)

printf("%d",sum);

}

很簡單的一段**,就是通過指標來訪問陣列元素,在此只提一點,就是&a[size],雖然a[size]不存在,陣列的最後乙個元素時a[size-1],但是c編譯器不會對下標進行越界檢查,也就是說a[size]一樣可以訪問,所以我們可以用這樣的方式來終止for迴圈。

另外,面對指標訪問陣列還是下標訪問陣列,都是圍繞著訪問效率來的。其實這依賴於不同編譯器的具體實現,在c標準中並無提及。

2. 指標與多維陣列

這個在我大學學c語言時,一直都沒有理解,不過現在看來比較容易了。

二維陣列實際上在儲存上也是一段連續的記憶體空間,因此我們可以將二維陣列當做一維陣列來對待,如下面的**:

#define row 3

#define col 5

int main (void)

printf("%d",sum);

}

但是這樣做看起來可讀性並不好,對於一些老編譯器來說這樣做的效率較高,可是對於現代編譯器來說已經沒有了這樣的優勢。

因此我們一般應該這樣來做,我們知道,對於二維陣列來說,例如a[i][j] ,其實a[0]代表的就是第一行的首元素的位址。那麼我們就可以利用這個來訪問多維陣列元素:

#define row 3

#define col 5

int main (void)

C語言學習筆記 7

1 根據輸入的分數求等級 注意邏輯運算子的處理,c語言中真用1表示,假用0表示 2 三個數排序 include include int main void int a,b,c,t printf 請輸入三個數,以空格隔開 scanf d d d a,b,c if a素數 在所有的非零自然數中,除1和自...

c語言學習筆記7

if語句在 c語言中是經常會用到的語句,也可以算是一種基本語句,在學習過程中我們應該努力學習好每一種語句用法,if語句算是 c語言入門 語句的一種,學習時間長了各種語句會運用的更加熟練。1 if 表示式 語句 其語義是 如果表示式的值為真,則執行其後的語句,否則不執行該語句。其過程可表示為下圖。例子...

C語言學習筆記7

回顧 1.迴圈巢狀 2.while,do.while迴圈 3.隨機數 4.陣列 作業 1.彩票作業 2.身份證作業 陣列可以在宣告的時候初始化 初始化的時候沒有提供初始化資料的變數會被自動初始化成0 陣列名稱在計算機裡被當成數字使用,它就是陣列中第乙個變數的位址 陣列名稱不可以被賦值 陣列名稱加常數...