2 11 C語言基礎

2021-09-09 06:36:33 字數 1023 閱讀 9646

2.11

對陣列名稱進行sizeof計算得到整個陣列大小

陣列宣告語句執行後其中儲存位置的格式就不可改變了

變長陣列中儲存位置的個數在編寫完程式後是不確定的(但在執行過陣列宣告語句後必須確定),c99規範才支援變長陣列

變長陣列不可以初始化

int arr[num]=; //錯誤,不可以初始化
在編寫程式時無法確定數值的數字叫隨機數

rand()標準函式可以獲得偽隨機數,直接把函式呼叫語句當數字使用就可以獲得偽隨機數,為了使用這個標準函式需要包含stdlib.**件

srand標準函式用來設定隨機數種子,可以把任何乙個整數作為種子使用,需要包含stdlib.**件

time標準函式可以獲得0時區從1970-01-040時0分0秒到現在所經過的時間,為了使用這個函式需要包含time.**件

srand(time(0));//隨機數
任何程式中srand標準函式應該只執行一次

一維陣列只有乙個下標,二維陣列有兩個下標,他們是兩種使用記憶體中連續儲存位置的方法,二維陣列中第乙個下標用來表示某個分組,可以把這個下標叫做組下標,範圍是從0到組的個數減一

二維陣列中第二個下標用來表示分組中某個儲存位置

通常採用迴圈巢狀結構對二維陣列中所有儲存位置依次進行處理

二維陣列可以被當成乙個一維陣列進行初始化,也可以當做多個陣列進行初始化

如果根據初始化資料的兒歌書可以計算出組的個數則可以在宣告二維陣列的時候省略組的個數

二維陣列名稱也代表第乙個儲存位置的位址,但它和一維陣列名稱的型別不同

在sizeof計算中二維陣列名稱代表整個二維陣列,計算結果是二維陣列中所有儲存位置的大小

一維陣列名稱和二維陣列名稱型別不同,他們可以相互轉換

對一維陣列名稱取位址操作結果的型別就是二維陣列名稱,但數值沒改變

轉換後的二維陣列中只有一組資料,其中包括原來一維陣列中的所有儲存位置

二維陣列名稱加乙個下標就可以轉換成乙個一維陣列,這個一維陣列就是二維陣列中的某一組資料的位置

《C語言解惑》 2 11 指標的困惑

例2.17 分析下面程式的執行結果。include void main 這個程式執行後給出乙個奇怪的輸出 50,1250 a p 的表示式是對的,即 225 50 但 bx p 應是 50 25 25 50 為何變成1250了呢?原來程式多了乙個 號,使計算c的表示式變為 c b x 也就是原來 被...

浙大版《C語言程式設計(第3版)》練習2 11

本題目要求計算下列分段函式f x 的值 注 可在標頭檔案中包含math.h,並呼叫sqrt函式求平方根,呼叫pow函式求冪。輸入格式 輸入在一行中給出實數x。輸出格式 在一行中按 f x result 的格式輸出,其中x與result都保留兩位小數。輸入樣例1 10輸出樣例1 f 10.00 3.1...

c 語言基礎

三個訪問描述符 public private 和protected 都可以修飾類的資料成員和成員函式 public 可以可以被任何訪問,private 只能被該類的公,私成員函式,該類的友元函式或者友元類的成員函式訪問。protected 只能被該類的公,私成員函式和該類的派生類訪問。c 中除了,和...