婁老師在文章中屢次提到「作中學(Learning By Doing)」的概念,並經過婁老師本身的減肥經歷、五筆練習經歷、乒乓球練習經歷和背英文單詞的經歷爲讀者更加詳細地闡明瞭「作中學(Learning By Doing)」的重要性。html
在實踐中發現問題,解決問題,在實踐中提升,在實踐中迭代,技能才能不斷提升。java
-- 引用自《作中學之乒乓球刻意訓練一年總結》編程
在我看來「作中學(Learning By Doing)」是指在學習過程當中要注重實踐,要多動手,想法不要只停留在腦中或口中。數組
我是一個特別喜歡打籃球的人。從初一便開始接觸了這門運動。如今的水平在業餘水準裏還算能夠。之因此能取得進步,我以爲與如下幾點密不可分。函數
總結後發現與婁老師提出的「作中學(Learning By Doing)」的理念是有一些共通之處的。在婁老師的《優秀的教學方法---作教練與作中學》一文中提出實踐要具有必定的量才能引發質變和調過程序的都知道,若是知道哪錯了,改起來是很容易的,定位錯誤在很難,這就是老師(教練)的價值。這兩點與個人認識相同,都強調了不斷練習與導師指點的重要性。學習
除此以外,婁老師還提出了學習是要思考的,僅僅實踐是不夠的與技能是分層次的這兩個觀點。這是我以前沒有認識到的,讀後受益良多。spa
你是怎麼學習C語言的?(做業,實驗,教材,其餘),與你的高超技能相比,C語言的學習有什麼經驗和教訓?線程
我c語言大部分的知識來源於教材與課後做業。經過讀教材來初步瞭解c語言的基本內容,經過課後題庫的反覆練習來學習寫程序。c語言的學習讓明白了反覆練習的重要性,也讓我懂得了不要一味的刷簡單題,要不斷提高難度,高效率地學習。設計
目前爲止估算本身寫過多少行C代碼?理解的狀況如何?量變引發質變,如何平衡質和量?指針
必定是要有充足的「量」才能產生質變。可是「量」是要不斷提高水準的,而不是一味的追求數量。
學過了C語言,你分的清數組指針,指針數組;函數指針,指針函數這些概念嗎?
指針函數是帶指針的函數,返回值是指針;函數指針是指指向函數的指針變量,函數指針指向函數的入口地址。
學過了C語言,你明白文件和流的區別和聯繫嗎?如何區分文本文件和二進制文件?如何編程操做這兩種文件?
不明白。
學過了C語言,你知道什麼叫面向過程程序設計嗎?它解決問題的方法是什麼?
不知道...
在C語言裏面,什麼是模塊?你寫過多個源文件的程序嗎?
依照功能,將一個程序拆分紅多個部分,分步完成後再整合到主程序中。
學過了C語言,你知道什麼是「高內聚,低耦合」嗎?這個原則如何應用到高質量程序設計中?
不清楚
學過了C語言,你如何把數組A的內容複製到數組B中?如何查找整數數組A中有沒有數字5?如何對整數數組A進行排序(從小到大,從大到小)?寫出相應的程序。
把數組A的內容複製到數組B
#include <stdio.h> #define N 50 main() { char a[N],b[N]; int i,n; printf("Input A:\n"); gets(a); for(i=0;a[i]=='0';i++) { n=1; } for(i=0;i<=n;i++) { b[i]=a[i]; } printf("B="); gets(b); }
#include <stdio.h> #define N 50 main() { int a[N]={0,1,2,3,4,5,6,7,8,9},i; for(i=0;i<=N-1;i++) if(a[i]==5) printf("數組中有5"); }
從小到大
#include <stdio.h> main() { int a[10]; int i,j,t; printf("Input 10 numbers:\n"); for(j=0; j<10; j++) scanf("%d",&a[j]); printf("\n"); for(i=0; i<9; i++) for(j=0; j<9-i; j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } for(j=0; j<10; j++) printf("%d\n",a[j]); printf("\n"); }
從大到小
#include <stdio.h> main() { int a[10]; int i,j,t; printf("Input 10 numbers:\n"); for(j=0; j<10; j++) scanf("%d",&a[j]); printf("\n"); for(i=0; i<9; i++) for(j=0; j<9-i; j++) if(a[j]<a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } for(j=0; j<10; j++) printf("%d\n",a[j]); printf("\n"); }
寫一個程序,統計本身C語言共寫了多少行代碼。
沒有思路。
你知道什麼是斷點嗎?給出本身調試程序的例子。
在編程中設置斷點,運行到斷點時自動中止編譯,能夠用來檢查程序,很方便。
參考怎樣快速閱讀一本書,快速閱讀一下雲班課中有PPT,每章提出一個問題
第十五章:聲明泛型類的好處在哪裏?
對比C語言的學習,你對《Java程序設計》的學習有什麼具體目標?如何經過刻意訓練提升程序設計能力和培養計算思惟?如何經過「作中學」實現你的目標?
像作中學所說,要反覆「刻意訓練」,要多向教練(老師)請教問題,要有更高的目標,量變產生質變。說白了,對我來講就是多寫代碼。