1. 程式人生 > >20165323 學習基礎和C語言基礎調查

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

每天 繪制 調用 gpo 重要 高質量 數組指針 平衡 是否

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

一、技能學習心得

1、你有什麽技能比大多人更好?
我覺得我羽毛球打的還行,不能說打得比大多數人好,但是對於一些打羽毛球的要領還是掌握的。
2、針對這個技能的獲取你有什麽成功的經驗?
想要打好羽毛球,首先你得建立起對它的興趣。你對打羽毛球這件事產生了興趣,你才能夠更加投入地去練習它,這樣子你的效率才高。如果你對這件事沒有興趣,那麽你對於這件事的態度或許只是在應付而已,這樣子就不會有任何的意義,也很難提升自己的水平。其次,便是堅持。常言道:“寶劍鋒從磨礪出,梅花香自苦寒來。”只要你能夠堅持下來,每天進行練習,積累經驗,你的能力就會得到提高。那些專業的運動員,為什麽他們打的那麽好,就是因為他們練習的夠多。每天一個動作都要來回做幾百次乃至上千次,形成肌肉記憶。而且羽毛球是一項非常耗費體力的運動,訓練體能的過程也是一個非常難熬的過程。繞著四個場子跑個五六十圈,然後進行對打練習,有時候揮拍揮到胳膊都伸不直,這也是常見的事。而完成這些過程的前提是什麽?那就是自己內心對於這件事的堅持。為什麽我們和專業運動員有著明顯的差距,因為他們已經在能力上有了進一步的升華。這跟婁老師在《做教練與做中學》所說的實踐要具備一定的量才能引起質變

有著共通之處。也正如婁老師在博客中所說,

技能的提升要「刻意訓練」
低水平重復是不行的,訓練時間再長都沒用
要擺脫「舒適區」,進入「學習區」學習
要循序漸進,不能進入「恐慌區」

--引用自《做教練與做中學》。大部分人打球只是停留於“舒適區”,這便是專業運動員與我們存在差距的原因所在。

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

1、你是怎麽學習C語言的?
大一下學期學習C語言這門課程,先是通過消化上課時老師所講的內容,理解所講的含義,能弄懂大部分的內容。但是實踐上存在很大的問題,不知道如何具體的使用,不知道應該從哪一步開始下手。在作業系統中完成作業時,先寫出一些簡單的代碼,通過寫一些簡單的題來加深自己對這些內容的理解。當感覺自己理解的差不多的時候,再開始去做一些稍微復雜的題目。可能題目不如那些簡單題目那樣一目了然,不過我會自己先思考一下,嘗試去寫一下代碼,如果實在寫不出來,再看看答案是怎麽去做的,如果裏面的步驟還是不能夠去理解,再去請教一下老師和同學。當確定自己已經理解如何去做之後,過一段時間再去做一下同類型的題,看看自己是否還能夠做出來,防止自己遺忘這部分的內容。與打羽毛球相比,C語言的學習最重要的也是練習量,你做的夠多,能夠理解的也就越多。當你的理解達到一定層面的時候,你就應該擺脫“舒適區”,繼續做一些比較復雜的題目,積累一定的題目,達到一定的量而引起質變。
2、目前為止估算寫過的代碼數,理解情況


估計代碼可能寫了3000-4000行左右,大部分簡單的代碼都能理解,但是一些復雜的題目做起來難度還是很大,很難自己編寫出來。對我來說,大量的練習是必不可少的,我覺得要做到質和量的平衡還是要多加練習。
3、學過了C語言,你分的清數組指針,指針數組;函數指針,指針函數這些概念嗎?
數組指針:指向數組的指針

    指針數組:數組元素全為指針的數組

    函數指針:指向函數的指針包含函數的地址,調用函數

    指針函數:指針函數返回類型是某一類型的指針
4、學過了C語言,你明白文件和流的區別和聯系嗎?如何區分文本文件和二進制文件?如何編程操作這兩種文件?
沒有明白兩者的區別與聯系。查了一下百度《C語言流與文件》
5、學過了C語言,你知道什麽叫面向過程程序設計嗎?它解決問題的方法是什麽?


“面向過程”是一種以過程為中心的編程思想。就是分析出解決問題所需要的步驟,然後用函數把這些步驟一步一步實現,使用的時候一個一個依次調用就可以了。
6、在C語言裏面,什麽是模塊?你寫過多個源文件的程序嗎?
函數應該就是一個模塊吧。還沒寫過多個源文件的程序。
7 學過了C語言,你知道什麽是“高內聚,低耦合”嗎?這個原則如何應用到高質量程序設計中?
通過上網查找,理解了一下
高內聚,低耦合,說的是在程序的各各模塊中,盡量讓每個模塊獨立,相關的處理盡量在單個模塊中完成
8、學過了C語言,你如何把數組A的內容復制到數組B中?如何查找整數數組A中有沒有數字5?


#include <stdio.h>
#define N 80
int main()
{
    int a[N],b[N];
    int i,n,k=0;
    printf("input n:");
    scanf("%d",&n);
    printf("A:");
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        b[i]=a[i];
        if(a[i]==5)
        {
            printf("該數組有5\n");
            break;
        }
    }
    if(a[i]!=5)
    {
        printf("該數組沒有5\n");
    }
        printf("B:\n");
        for(i=0;i<n;i++)
        {
            printf("%d\t",b[i]);
        }
    printf("\n");

    return 0;
}

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

#include <stdio.h>
#define N 40
int main()
{
    void min(int a[],int n);
    void max(int a[],int n);
    int a[N];
    int i,n,k=0;
    printf("input n:");
    scanf("%d",&n);
    printf("A:");
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    printf("從小到大排序輸入0,從大到小排序輸入1\n");
    scanf("%d",&k);
    if(k==0)
    {
        min(a,n);
        printf("從小到大排序後的整數依次為:\n");
        for(i=0;i<n;i++)
        printf("%d\t",a[i]);
        printf("\n");
    }
    if(k==1)
    {
        max(a,n);
        printf("從大到小排序後的整數依次為:\n");
        for(i=0;i<n;i++)
        printf("%d\t",a[i]);
        printf("\n");
    }
    return 0;
}
void min(int a[],int n)
{
    int i,j,temp;
    for(i=0;i<n;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(a[i]>a[j])
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
    }
}
void max(int a[],int n)
{
    int i,j,temp;
    for(i=0;i<n;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(a[i]<a[j])
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
    }
}

寫一個程序,統計自己C語言共寫了多少行代碼
真心不會
你知道什麽是斷點嗎?給出自己調試程序的例子。
斷點就是程序調試是自動中斷的地方。
提出問題
1、Java源文件中為什會有不同的類?怎麽區分?
2、數組的引用是什麽?
3、for語句在Java中所具有的不同於C語言中的用法有什麽?
4、實例方法和類方法的區別是什麽?
5、子類與對象之間的關系是什麽?
6、接口如何理解以及面向借口編程的思路是什麽?
7、異常類如何使用?
8、String類與StringBuffer類的區別與聯系?
9、常用布局所適用的情況對應是什麽?
10、不同的子類所對應的輸入、輸出流的類別是什麽?
11、如何使用預處理語句?
12、如何創建多線程?
13、套接字與對象如何進行連接?
14、繪制基本圖形應該註意什麽?
15、如何對泛型和集合進行使用?
java學習目標及途徑
養成每天寫代碼的習慣,做到知識的積累,量的積累產生質變,由此提高自己的知識面。每天完成布置的任務,利用課外時間看看ppt,加深對內容的理解。

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