20165105 學習基礎和C語言基礎調查

1、技能學習心得

一、你有什麼技能比大多人更好?
       我以爲個人接受能力很快,大一下學期的體育課學游泳時第一次下水掌握了漂浮,第三次下水掌握了仰泳,第七次下水學會了蛙泳換氣,期末體育課總評爲98分;第一次滑雪通關觀察發現了平底雙腳滑行的訣竅,經過練習能夠基本捨棄雪杖(小學二年級起,滑過兩年旱冰),滑高級雪道滑下從未摔倒。
二、針對這個技能的獲取你有什麼成功的經驗?html

        我總結的經驗有兩點,第一點是思考,第二點是要敢於實踐,第三點是堅持不懈。java

  • 在實踐前須要進行些許的思考,找到正確的方向後再開始着手,否則很容易出現南轅北轍的狀況。
  • 在實踐中要善於思考,不斷地總結經驗,不斷地修正方向,有這樣一則實驗,在一片足夠大的空地上,一個蒙着眼睛的人行走出來的軌跡是一個近似的圓型,這是由人的腳型大小和腳步的不一致形成的。通常來講,大多數人右腳比左腳的步子老是大些。(左撇相反)睜眼的時候,咱們會根據眼睛裏看到的參照物,不斷地微調行走路線,使之成爲直線。但閉上眼睛後,就是去了參照物,也不能發揮這種調節功能了。這時候,人們還老是以爲本身在走直線,就職由兩腳天然向前,最後的結果是人卻情不自禁地往左偏移了。咱們盲目學習新事物的過程,就至關於咱們蒙着眼走路的過程,因此咱們不要盲目,要睜開咱們的眼睛,而這雙眼睛正是咱們善於思考的大腦,充分的思考,能讓咱們少走不少彎路。
  • 在實踐後咱們更須要反思,總結本次實踐的不足思考解決方案,能讓咱們更加接近成功。

       學習時千萬不能紙上談兵,這就像游泳,若是不下水,在岸上不管把動做學的多麼到位,同樣是個旱鴨子,是禁不起事實檢驗的。因此克服咱們心中潛在的畏懼意識,不怕困難,不怕失敗,堅持下去總會成功的。體育課能拿到較高的分數,和不斷地練習也是分不開,除去每週一次的體育課,每一個週末至少都會去一次游泳館。我額外的收穫就是一學期瘦下了32斤。算法

       老師的博客,提到了作中學這一觀點,我我的十分贊同。在我看來,什麼事情,只有本身親力親爲的去作,去琢磨裏面的原理方法,纔可以作成。不然面對一件事,你只是去空想,想的天花亂墜,那不過也只是你的空想空談,沒有你本身親自去學去作來的實在。博客中的一篇文章講的是五筆打字法的學習方式,五筆打字是一種相對較難的打字錄入方式,不過只要是多加練習,咱們也可以掌握這門打字方法,可見練習和訓練的重要性。並且五筆打字法看似困難,可是這其中也蘊含着規律,摸清規律,找對感受,五筆打字也能夠作獲得。接着我又看了老師有關訓練乒乓球的博客,我也頗有感觸。我對籃球的感受,和老師對乒乓的感受有類似之處,我開始的時候也只是隨便瞎玩,把球往天上一扔,管你走不走步,開心就好。但是隨着對這門運動接觸加深,我就越想要好好訓練把本身的籃球技巧練好,作得更加專業。不斷刻苦的練習練習再練習,這是漫長而艱苦的過程,不過它更是一個進步的過程,沒有誰的成功能夠一蹴而就。這些學習過程當中強調練習的重要性,我以爲這和我我在籃球上的訓練也有一些相通之處。練習纔是王道,不練難以成才。編程

       總結本身的經驗與婁老師博客中所談的成功經驗,我以爲Java的學習須要日復一日的努力和堅持不懈的積累,並把思考融入進努力之中,才能取得不錯的成績。數組

2、有關C語言學習的調查

一、你是怎麼學習C語言的?
       大一下的C語言課程由徐xq老師講授,上課認真聽講,記好筆記,尤爲注重徐老師提出的問題,課後認真消化所學知識,在做業系統中嘗試編寫代碼,由淺入深,由簡至難,不斷刷題,實在想不透的時候找老師或學的好的同窗答疑,努力去掌握每一個學過的算法,掌握細節,每次感受本身有了些許提升的時候,就是本身完成一次實驗課的時候,只有在實驗時遇到的複雜要求,才能真正檢驗出本身學習的不足之處。數據結構

       估計代碼大概寫了3000行,除了實驗課要求的複雜代碼,都沒有太過複雜的,基本上均可以理解,複雜程序的理解不夠深刻,簡單代碼理解透徹了,在逐步理解複雜的代碼,量變終究會引發質變的,質變的速度取決於努力的程度。
三、學過了C語言,你分的清數組指針,指針數組;函數指針,指針函數這些概念嗎?
               數組指針:本質是指針,指向了數組,有行指針也有列指針。函數

    指針數組:本質是數組,由多個類型相同的指針構成。學習

    函數指針:本質是指針,指向了函數。spa

    指針函數:本質是函數, 形參爲指針變量。debug

四、學過了C語言,你明白文件和流的區別和聯繫嗎?如何區分文本文件和二進制文件?如何編程操做這兩種文件?

  • 文件是計算機管理數據的基本單位,同時也是應用程序保存和讀取數據的一個重要場所。是字節序列的抽象概念,例如文件、輸入/輸出設備、內部進程通訊管道等。流提供一種向後備存儲器寫入字節和從後備存儲器讀取字節的方式。流是一種分段操做,不會永久存在,文件是實體,被固定存儲。
  • 文本文件中的每一位數字都單獨佔用一個字節的存儲空間,而二進制文件則是把整個數字做爲一個二進制數來儲存的。

     ——來源於百度
五、學過了C語言,你知道什麼叫面向過程程序設計嗎?它解決問題的方法是什麼?

        面向過程即將任務分紅幾個過程來實現,即劃分不一樣模塊,最後在主函數中將幾個模塊串聯在一塊兒,一步一步實現,具體能夠經過調用函數等方式,從部分到總體,從細節到全局。

六、在C語言裏面,什麼是模塊?你寫過多個源文件的程序嗎?
        爲完成某一功能所需的一段程序或子程序;或指能由編譯程序、裝配程序等處理的獨立程序單位;或指大型軟件系統的一部分;

        我尚未寫過
7 、學過了C語言,你知道什麼是「高內聚,低耦合」嗎?這個原則如何應用到高質量程序設計中?
        這個真的不清楚,經過百度理解了一下,

        內聚是從功能角度來度量模塊內的聯繫,一個好的內聚模塊應當剛好作一件事。它描述的是模塊內的功能聯繫。耦合是軟件結構中各模塊之間相互鏈接的一種度量,耦合強弱取決於模塊間接口的複雜程度、進入或訪問一個模塊的點以及經過接口的數據。高內聚低耦合,是軟件工程中的概念,是判斷設計好壞的標準,主要是面向對象的設計,主要是看類的內聚性是否高,耦合度是否低。高內聚是指一個軟件模塊是由相關性很強的代碼組成,只負責一項任務,也就是常說的單一責任原則;低耦合是指讓每一個模塊,儘量的獨立完成某個特定的子功能。模塊與模塊之間的接口,儘可能的少而簡單。

       也就是說,讓每一個模塊,儘量的獨立完成某個特定的子功能。模塊與模塊之間的接口,儘可能的少而簡單。若是某兩個模塊間的關係比較複雜的話,最好首先考慮進一步的模塊劃分。這樣有利於修改和組合。

——來源於360百科


八、學過了C語言,你如何把數組A的內容複製到數組B中?如何查找整數數組A中有沒有數字5?

 

#include<stdio.h>
#define N 5
main()
{
    int a[N],b[N];
    int i;
    printf("輸入數組a:\n");
    for(i=0;i<N;i++)
    {
        scanf("%d",&a[i]);
    }
    printf("b數組:\n");
    for(i=0;i<N;i++)
    {
        b[i]=a[i];                       //互換結束
        printf("%d\n",b[i]);      
    }

    for(i=0;i<N;i++)
    {
        scanf("%d",&a[i]);
    }
    for(i=0;i<N;i++)
    {    
        if(a[i]==5)
        printf("a[%d]:5!",a[i]);           //輸出「5」所在數組中的位置
        exit(0);
    }
}

 

九、如何對整數數組A進行排序(從小到大,從大到小 )?寫出相應程序。

#include<stdio.h>
#define N 10
void Paixu(int a[],int n)
{
    int i,j,c;
    for (i=0;i<n-1;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(a[j]>a[i])
            {
                c=a[j];
                a[j]=a[i];
                a[i]=c;
            }
        }
    }
}
main()
{
    int a[N],i;
    for(i=0;i<N;i++)
    {
        scanf("%d",&a[i]);
    }
    Paixu(a,N);
    printf("從大到小排序後:\n");
    for(i=0;i<N;i++)
    {
        printf("%d\n",a[i]);
    }
}

 

寫一個程序,統計本身C語言共寫了多少行代碼
        思考了一下,僅有一點點頭緒,涉及到文件操做的部分沒有掌握,短期寫不出來,往後我會把這部分課程補上的。
你知道什麼是斷點嗎?給出本身調試程序的例子。

        斷點是人爲設置的,意思就是讓程序執行到此「停住」,再也不往下執行。

        例子:在代碼編譯出現問題的時候,常常要用老師教的「單步調試」的方式(debug)對函數傳參過程進行分析。 

提出問題
一、JAVA語言有什麼特色?

二、Java中數據結構類型與C有不少的相同之處,有沒有不一樣時存在於兩種算法中的數據結構呢?

三、Scanner reader=new Scanner(System.in);理解不了

四、什麼是「類」?

五、子類與對象之間的關係是什麼?

六、接口和abstract類的具體區別

七、內部類與異常類怎麼理解?

八、這麼多類,那些是經常使用的那些不經常使用?

不行了,看不明白了........

java學習目標及途徑       我會就本身薄弱的方面進行重點學習,課下多作、多問、多想,課上認真聽講,作好筆記。編程能力的提升靠思惟的培養,須要多作題多練習,這是學習每一種語言的最有效方式,就像老師在五筆學習中的要求:「手比腦快」。

相關文章
相關標籤/搜索