學習陣列和函式所遇到的問題

2021-08-15 02:19:55 字數 1084 閱讀 3112

1.陣列下標的含義是什麼?是否一定是從0開始?

答:陣列下標的含義是陣列所要占用的空間的大小。在不同的語言下,下標值的開始值不一定相同,可以從0開始,也可以從1開始。

2.遍歷陣列元素的方法有幾種?哪種方法更有效率?為什麼?

有兩種。方法一:

for(i = 0; i < max; i++)

方法二:

for(p = a; p < &a【max】; p++)

方法二更好。因為方法一要進行乘法運算,方法二只需要引用指標。

3.陣列的要素是什麼?假設乙個陣列的陣列名是a,那麼a和&a有什麼不同?

答:陣列的三要素是基本型別,大小,陣列的值。

a的意思是陣列裡面首元素的位址。

&a的意思是整個陣列在記憶體中的位址。

雖然用指標指向上面兩個位址時,結果是相同的。但是所表示的內容是不同的。

4.字串和陣列的分別:

答:字串有特定的規格和大小,陣列長度不確定,大小不確定。陣列裡的元素可以是字串。

5.構成函式的要素:函式名,函式形參,函式返回值,函式體。

6.函式形參的傳遞:

變數,陣列元素,指標變數,陣列名,結構體。

7.函式執行的步驟:

1. 通過函式名找到函式的入口;

2. 給函式形參分配空間

3. 傳參;

4. 執行函式體裡面的語句

5. 函式返回;

6. 釋放空間;

8.函式傳參時的選擇:

當要修改實參變數對應空間的值,傳實參變數的位址;

當只使用而不修改實參變數空間的值,傳實參變數名

9.形參和實參的區別:

形參出現在函式定義中,在整個函式體內都可以使用, 離開該函式則不能使用。

實參出現在主調函式中,進入被調函式後,實參變數也不能使用。

形參和實參的功能是作資料傳送。發生函式呼叫時, 主調函式把實參的值傳送給被調函式的形參從而實現主調函式向被調函式的資料傳送。

10.printf函式的用法。

printf是行緩衝,別寫程式時要加上\n(特殊情況除外),當多個printf共同作用時可能出現問題。

箭頭函式所遇到的小小問題

直接上 timer 1000 let timer new timer 為什麼會報錯呢?箭頭函式注意點 函式體內的this物件,就是定義時所在的物件,而不是使用所在的物件 不可以當作建構函式,就是說不能new 不可以使用arguments 不可以使用yield 也就是說,this物件的指向是可變的,但...

Focal loss損失函式 所解決的問題

解決的問題 消除正負樣本比例不平衡 one stage演算法需要產生超大量的預選框,模型被大量負樣本所主導,focal loss對此種情況卓有成效。並且挖掘難負樣本 難負樣本即為一些很難區分是正樣本還是負樣本的負樣本 其對立的就是一些簡單的負樣本,很容易區分出來是負樣本,其前向傳播的loss很小,模...

lambda 函式所引起的閉包問題

之前在某本書上看到一道題,要求是 用字串sign中的每乙個字元去分割s字串,並得到最後的結果 s ab cd efg hi,jkl mn opq rst,uvw xyz sign 書中給的答案是這樣的 def my split s,sign s s for i in sign t for x in ...