學號20172332 2017-2018-2 《程序設計與數據結構》第二週學習總結
教材學習內容總結
- 1.字符串的概念以及拼接。
- 2.println方法和print方法的用法和區別
- 3.轉義序列的概念和用法。
- 4.變量常量和賦值語句的相關內容。
- 5.8個基本數據類型。
- 6.表達式的概念,算數、自增自減、賦值三種運算符以及運算符優先級。
- 7.數據類型轉換的安全性以及三種技術。
- 8.最最重要的Scanner類!!!
教材學習中的問題和解決過程
- 問題1:字符串與數字拼接和數字運算的區分。
- 問題1解決方案:我本身總結了一下。若是是數字拼接則至少有一個是字符串,會有兩種形式:1.數字放在字符串中,也就是雙引號中。(代碼形式,舉個例子:"Letters in the Hawaiian alphabet:12")2.字符串+數字或者數字+字符串的形式。(代碼形式,舉個例子:"Speed of ketchup :"+40或者40+"km per year")。若是是數字運算則操做數都爲數值型,也就是把數字+數字用括號括起來。(代碼形式,舉個例子:"24 and 45 added:"+(24+45))
- 問題2:製表符的做用和空格有什麼區別。
- 問題2解決方案:製表符通常是8個空格,並且製表符遇到特殊狀況會自動縮進,總的來講,製表符比空格方便並且整齊。
- 問題3:

b說都是int型,可是e又說他是final型,它究竟是啥型。
- 問題3解決方案:它屬於int型也屬於final型是從不一樣角度去分析而獲得的。
- 問題4:自增自減運算符的優先級。
- 問題4解決方案:獨立使用在一條語句中時,前綴形式和後綴形式是同樣的。(舉個例子:++count和count++)在複雜的表達式中,前綴是先把變量+1而後賦值,後綴是先賦值最後把變量+1(舉個例子:count是5,total=++count則count是5+1=6,total也是6;total=count++則total是5,count是5+1=6)
- 問題5:操做數除法的運算出的結果的數據類型。
- 問題5解決方案:兩個操做數都是整型數則結果爲整型數;若是操做數中含有一個浮點型值則結果爲浮點型值。
代碼調試中的問題和解決過程

上週考試錯題總結
- 1.A Java program is best classified as (一個Java程序被歸爲___類最合適)
A . hardware (硬件)
B . software (軟件)
C . storage (存儲)
D . processor (處理器)
E . input (輸入)
答案是B,我選的E。解析:程序被分類爲軟件,以區別於計算機(硬件)的機制。存儲和處理器是硬件的兩種形式,而輸入是程序處理的信息。本身的理解:程序屬於軟件,程序中的信息才屬於輸入。
- 2.When executing a program, the processor reads each program instruction from (當執行一個程序時,處理器從___讀取每一個程序指令)
A . secondary memory (storage) (輔助存儲器(存儲))
B . the Internet (互聯網)
C . registers stored in the processor (儲存在處理器中的寄存器)
D . main memory (主存儲器)
E . could be any of these (能夠是以上這些中的任何一個)
答案是D,我選的是E。解析:程序在執行前從輔助存儲器加載到主存中,以便經過讀取每條指令不減慢處理器的速度。這種在內存中執行程序的想法叫作存儲程序計算機,是20世紀40年代約翰·馮·諾依曼獨創的。本身的理解:爲了保持運行的速度,處理器都是從主存儲器中讀取指令的,因此別的指令都是要先加載到主存儲器中,才能被處理器讀取。
- 3.The ability to directly obtain a stored item by referencing its address is known as (經過引用地址直接得到存儲項的能力被稱爲___)
A . random access (隨機存取)
B . sequential access (順序存取)
C . read-only access (只讀訪問)
D . fetch access (獲取訪問)
E . volatility (易變性)
答案是A,我選的E。隨機存取就是直接存取。
- 4.It is important to dissect a problem into manageable pieces before trying to solve the problem because (試圖解決問題以前,把一個問題分解成可控制的幾部分是很重要的,由於)
A . most problems are too complex to be solved as a single, large activity (大多數問題太複雜,以致於不能做爲一個單獨大型的活動來解決)
B . most problems are solved by multiple people and it is easy to assign each piece to a separate person (大多數問題都是由不少人解決的並且把每一部分分配給不一樣的人是很容易的)
C . it is easier to integrate small pieces of a program into one program than it is to integrate one big chunk of code into one program (將程序的小部分整合到一個程序中比將一大塊代碼整合到一個程序中更容易)
D . our first solution may not solve the problem correctly (咱們的第一個方案可能沒法正確解決問題)
E . all of the above (以上皆是)
答案是A,我選的C。解析:任何有趣的問題都很複雜,很難簡單地解決。經過分解問題,咱們能夠爲每一塊創建小的解決方案,而後集成這些碎片。答案D是正確的,但這並非咱們將問題分解成碎片的緣由。本身的理解:= =書看的不認真,光知道個大概,可是具體的字詞不清楚。
- 5.Comments should (註釋應該)
A . rephrase the code it explains in English (用英語複述它解釋的代碼)
B . be insightful and explain what the instruction's intention is ( 有深入看法並解釋指令的意圖是什麼)
C . only be included in code that is difficult to understand (僅僅包含在難以理解的代碼中)
D . be used to define variables whose names are not easy to understand (被用於解釋難以理解的變量名稱)
E . all of the above (以上皆是)
答案是B,我選的E。說實話,這道題我也不知道我爲啥選錯了,由於我本身的記憶中我選的是B,多是手滑點錯選項了(尷尬又不是禮貌的微笑)。A選項註釋不必定非得是英語。C選項不是僅僅,在容易理解的代碼中也能夠用註釋。D選項我認爲它包含的太少了。
- 6.The instruction: System.out.println("Hello World"); might best be commented as (這個指令最好被註釋爲)
A . // prints "Hello World" to the screen (將"Hello World"打印到屏幕上)
B . // prints a message (打印一條信息)
C . // used to demonstrate an output message (用來演示輸出信息)
D . //
E . // meaningless instruction (沒有意義的指令)
答案是C,我選的是A。注意題目中有最好兩個字,因此這道題應該選最合適的。A選項有點重複囉嗦,沒有C選項簡潔明瞭。
- 7.Which of the following is a legal Java identifier? (下面哪一個是合法的Java標識符?)
A . i
B . class
C . ilikeclass!
D . idon'tlikeclass
E . i-like-class
答案是A,我選的B。這道題應該理解爲合法的自定義Java標識符。B是已經規定好的保留字。自定義標識符的要求:能夠包含數字,英文,下劃線和美圓符號,可是不能以數字開頭。因此C,D,E都是錯的。
- 8.Which of the following would be a good variable name for the current value of a stock? (下面哪一個是關於變量「current value of a stock」的最佳命名?)
A . curstoval
B . theCurrentValueOfThisStockIs
C . currentStockVal
D . csv
E . current
答案是C,我選的A。最佳命名方式。A不夠完整不能表示全意思,B太長了,D過短了和E不夠完整。最佳命名方式,在過長和太短的命名中找到一個合適的命名。若找不到,則用長命名。
- 9.Java byte codes are directly executable whereas Java source code is not. (Java字節碼是能夠直接執行的,而Java源代碼則不是。)
A . true
B . false
答案是B,我選的A。Java字節碼和Java源代碼都須要轉換成機械語言,Java字節碼不屬於機械語言。(這題錯仍是對書的理解不到位!)
- 10.The word "Public" is a reserved word. ("Public"是一個保留字。)
A . true
B . false
答案B,我選的A。Java語言對大小寫是很敏感的,應該是public是保留字,看題不認真,沒有發現P是大寫。
- 11.Java is an example of a(n) (Java是一個___的例子)
A . machine language (機器語言)
B . assembly language (彙編語言)
C . high-level language (高級語言)
D . fourth generation language (第四代語言)
E . both C and D (C和D都是)
答案是E,我選的C。解析:java是第四代中建立的,它顯然也是一個高層次的語言。機器語言是機器可執行的語言,編寫的程序在0和1只。彙編語言,用助記符。第四代語言是封裝在程序內部的工具,這樣用戶就能夠靈活地編寫程序中執行的代碼。我本身是沒在書上找到,當一個概念記吧=。=。
其餘(感悟、思考等,可選)
首先關於此次考試,我有很大的感覺。我對於書的理解仍是不夠,對於一個概念不能向深處理解,而後是對於審題,粗心這個毛病,大學了怎麼還沒改掉!最重要的是,要增強英語學習了!下下次考試全英文,一首涼涼送給本身。
而後關於此次的學習,我以爲書上例題真的很重要,首先知道了一些語句的用法,而後還能多熟悉操做。
最後我在作pp時,會把一些語句改變順序,而後會發現有一些語句不能改順序,有一些則能夠改。並且經過作pp會發現不少本身記得不清楚的知識點,而後再經過翻書查找,加深對它的理解。
這章看完,我才以爲本身開始邁入編程的大門,就一個交互式程序本身琢磨了好久,才搞明白怎麼回事,估計後面會愈來愈難,須要花費的精力也愈來愈大,可是!感受有壓力纔有動力啊。
不過總的而言,我以爲這周的學習狀況會比上週有所好轉。編程
學習進度條
目標 |
5000行 |
30篇 |
400小時 |
|
第一週 |
182/182 |
1/1 |
10/10 |
|
第二週 |
458/640 |
1/2 |
15/25 |
|
參考資料