1. 程式人生 > >20172307 2017-2018-2 《程序設計與數據結構》第6周學習總結

20172307 2017-2018-2 《程序設計與數據結構》第6周學習總結

occurs 第一周 eva mage visio 二維 else ima 分享圖片

學號 2017-2018-2 《程序設計與數據結構》第6周學習總結

教材學習內容總結

本章學習了第八章的內容
1.講了創建聲明數組的方法(示例: int[] height = new int[11];)和創建基本數據一樣要聲明數據的類型。
2.邊界檢查中的差一錯誤屬於邏輯錯誤,主要是因為索引值是從0開始的。
3.數組本身就是對象
4.可變長度參數表聲明創建方式(示例:public double average(int .. list))省略號表示該方法接收的參數個數是可變的。
5.二維數組的聲明創建方式(示例:int[][] table = new int[5][10])前一個表示數組的長度也是行數,後一個表示前一個表示的行裏的列數。

教材學習中的問題和解決過程

  • 問題1:對什麽是數組並不太清楚。
  • 問題1解決方案:通過網上的一些解釋和對書本定義的重新理解得到了以下定義:數組是保存一列數據的對象。整列數據可以通過數組名引用,數組中的每個元素則可以通過其在數組中的位置進行引用。
  • 問題2:對書上的“差一錯誤”理解不進去
  • 問題2解決方案:通過查閱網上的解釋明白了差一錯誤屬於邏輯錯誤,由於索引值從0開始導致。

代碼調試中的問題和解決過程

  • 在進行 x +=y[];時發生錯誤
    數組也是對象,把x變成同一類型的對象就能進行相加。

代碼托管

技術分享圖片

上周考試錯題總結

  • The idea that program instructions execute in order (linearly) unless otherwise specified through a conditional statement is known as
    A . boolean execution
    B . conditional statements
    C . try and catch
    D . sequentiality
    E . flow of control
    正確:E
    程序按照條件語句順序執行叫做控制流。
  • Assume that count is 0, total is 20 and max is 1. The following statement will do which of the following? if (count != 0 && total / count > max) max = total / count;
    A . The condition short circuits and the assignment statement is not executed
    B . The condition short circuits and the assignment statement is executed without problem
    C . The condition does not short circuit causing a division by zero error
    D . The condition short circuits so that there is no division by zero error when evaluating the condition, but the assignment statement causes a division by zero error
    E . The condition will not compile because it uses improper syntax
    正確:A
    由於count=0不符合if的循環條件,所以語句不會執行。
  • If a break occurs within the innermost loop of a nested loop that is three levels deep
    A . when the break is encountered just the innermost loop is "broken"
    B . when the break is encountered, all loops are "broken" and execution continues from after the while statement (in our example)
    C . when the break is encountered, all but the outermost loops are broken, and execution continues from the next iteration of the while loop (in our example)
    D . this is a syntax error unless there are break or continue statements at each loop level
    E . none of the above
    正確:A
    break只會跳出當前的循環。也就是最裏面的循環。
  • In order to compare int, float and double variables, you can use <, >, ==, !=, <=, >=, but to compare char and String variables, you must use compareTo( ), equals( ) and equalsIgnoreCase( ).
    A . true
    B . false
    正確:B
    字符和字符串也可以用其他來比較,如==來比較,這時比較的是他們的地址是否一致。
  • The statement if (x < 0) y = x; else y = 0; can be rewritten using a conditional operator as
    A . y = (x < 0) ? x : 0;
    B . x = (x < 0) ? y : 0;
    C . (x < 0) ? y = x : y = 0;
    D . y = (x < 0);
    E . y = if (x < 0) x : 0;
    正確:A
    對條件運算符的應用。
  • Each case in a switch statement must terminate with a break statement.
    A . true
    B . false
    正確:B
    偶爾也有需要依次執行所有case語句的情況。

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一周 200/200 2/2 20/20
第二周 300/500 1/3 18/38
第三周 500/1000 1/4 22/60
第四周 300/1300 1/5 30/90
第五周 700/ 2000 1/6 30/120
第六周 792/2792 1/7 30/150

參考資料

  • 《Java程序設計與數據結構教程(第二版)》

  • [《Java程序設計與數據結構教程(第二版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.ht)

20172307 2017-2018-2 《程序設計與數據結構》第6周學習總結