在遊戲方面,我相對於大多數人來講可能更爲出色。首先是我投入了大量的時間進行遊戲;其次,我幾乎天天都會看一會教學視頻來模仿;最後應該仍是跟我的的天賦有點關係。html
若是把這個類比到學習的話,首先就是要投入大量的時間,做爲學習知識的保障;其次,當你不懂時,要馬上請教他人來幫助本身解決問題;最後,我認爲無論作什麼事,多多少少都跟天賦有些關係。但這並非決定性的因素,只是會形成投入時間的差異而已。因此,當發現本身的天賦不如他人的時候,就要比別人付出更多的時間和努力,這樣纔有可能超過他們。git
在初學習C語言的時候,相比與那些已經學過的同窗來講,說實話,是感到很是無奈和無力的。當別人花了2個小時就完成任務的時候,我卻要花4個小時來找本身的語法錯誤。可是這也是沒有辦法的,畢竟他們在很早的時候就已經付出了大量的時間。爲了彌補這些差距,我花了大量的時間去閱讀課本,可是沒有進行刷題。由於我以爲只有先掌握基礎的知識以後,刷題纔有意義。因此我基本上是經過反覆閱讀課原本學習的。與我所熟悉的遊戲方面相比,C語言沒有什麼基礎,可是我仍是會向他人請教問題來彌補。可是對於C語言的刷題量確實有點少,這是值得反思的。 ####目前爲止估算本身寫過多少行C代碼?理解的狀況如何? 目前爲止,我估計只寫了1500行代碼,可是對於知識的理解和掌握仍是比較清晰的。github
學過了C語言以後,以爲最難學的就是指針變量。數組指針指的是指向數組的指針。而指針數組是一個元素均爲指針類型數據的數組。函數指針,是指若是程序中定義了一個函數,在編譯時,編譯系統爲函數代碼分配一段存儲空間,這段代碼存儲空間的起始地址(又稱入口地址)稱爲這個函數的指針。指針函數是指帶指針的函數,即本質是一個函數。函數都有返回類型,只不過指針函數返回類型是某一類型的指針。這些都是很容易混淆的概念。編程
學完C語言後,不是很明白文件和流的區別和聯繫。因此去查找了一下資料。文件是計算機管理數據的基本單位,同時也是應用程序保存和讀取數據的一個重要場所。流是字節序列的抽象概念,例如文件、輸入/輸出設備、內部進程通訊管道等。流提供一種向後備存儲器寫入字節和從後備存儲器讀取字節的方式。對於如何區分文本文件和二進制文件,我參考了知乎上的解答。文本文件和二進制文件並沒有本質的差異,他們的區別在於打開這個文件的程序在對其內容的解釋上,咱們能夠把一個典型的所謂二進制文件(bmp)看成文本文件來打開,是一樣能夠的,只是獲得的內容就是一些亂七八糟的符號了。反過來,也是一樣成立。對於編譯操做這兩種文件,在閱讀資料後,仍是不是很明白。因此但願下學期可以深刻掌握。數組
面向對象的程序設計,面向對象程序設計(英語:Object-oriented programming,縮寫:OOP)是一種程序設計範例,同時也是一種程序開發的方法。對象指的是類的實例。它將對象做爲程序的基本單元,將程序和數據封裝其中,以提升軟件的重用性、靈活性和擴展性。解決問題的方法把構成問題的事物分解成各個對象,創建對象的目的不是爲了完成一個步驟,而是爲了描述某個事物在總體解決問題的步驟中的行爲。函數
模塊,我認爲一個函數就是一個模塊,不一樣的模塊用於實現不一樣的功能。目前爲止,我還沒寫過多個源文件的程序。 ####學過了C語言,你知道什麼是「高內聚,低耦合」嗎?這個原則如何應用到高質量程序設計中? 「高內聚,低耦合」,是指軟件工程的概念,用於判斷設計程序的好壞。所謂高內聚是指一個軟件模塊是由相關性很強的代碼組成,只負責一項任務,也就是常說的單一責任原則。所謂低耦合是指一個完整的系統,模塊與模塊之間,儘量的使其獨立存在。也就是說,讓每一個模塊,儘量的獨立完成某個特定的子功能。段。
要作到高內聚低耦合,設計模塊時須要作到:
1 各個模塊之間的功能必須明確;
2 各個功能模塊間實現的功能不能夠有交叉;
3 不容許出現模塊間的相互調用;
4 若是必須出現模塊間調用,那麼只容許單向調用,即A能夠調用B,B不能夠調用A。學習
要想把A數組的內容複製到B數組中,能夠用一個循環,取A和B數組中元素個數大的那個爲n,設計
for(i=0;i<n;i++)
b[i]=a[i];指針
便可把A數組的內容複製到B數組中。調試
要查找整數數組中是否有5,用循環+判斷,
for(i=0;i<4;i++)
{
if(a[i]==5)
{
printf("Yes");
k=1;
}
}
if(k!=1)printf("No");
便可查找整數數組中是否有5。
若要對整數數組A進行排序,能夠用冒泡法。
for(j=0;j<N-1;j++)
for(i=0;i<N-1-j;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
便可將整數數組A進行從小到大的排序,若要從大到小的排序,只須要將判斷條件if(a[i]>a[i+1])if(a[i]<a[i+1])改成便可。
關於文件的讀寫還不是很清楚,能夠參考學長的微博。寫一個程序,統計本身C語言共寫了多少行代碼。ver2.00
斷點,是在C語言調試的時候設置的間斷點,用來控制調試代碼的範圍。調試是一種很好用的測出本身錯誤的方法。
如圖,代碼左側的紅色圓圈就是斷點,能夠經過查看本身所須要的變量的變化來尋找本身的錯誤。
對比C語言的學習,我對《面向對象程序設計》的學習的具體目標是能更熟練度掌握基本概念和技巧,見識更多的題型和問題。經過大量的題目來訓練本身對某一題型的熟練度,在作完必定量的題目後,對錯題進行總結概括,概括題型,分析解題技巧來提升程序設計能力;經過訓練有創新性的題目或者經行有挑戰性的項目來培養計算思惟。
我以爲本身的寫做能力很通常。爲了提升本身的寫做能力,我想只能經過多閱讀、多寫的方式來提升吧。俗話說,孰能生巧嘛。