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

來源:互聯網
上載者:User

標籤:arc   efi   ret   整數   方法   rac   語句   資料庫   logs   

20165235 學習基礎和C語言基礎調查
  • 首先第一個問題:你有什麼技能比大多人(超過90%以上)更好?感覺很難回答這種問題,其實我對很多東西挺感興趣的,如果非要拿出一種比較突出的技能的話我感覺就是象棋和書法。不敢說比大多數人更好,但是在業餘愛好者中間相對來說還是不錯。
  • 針對這個技能的擷取你有什麼成功的經驗?若想擷取這種技能首先最重要的是對這種技能的興趣,因為興趣是人最好的老師。因為我對象棋書法的熱愛導致我想去學習。其次是堅持,若想真正的掌握一門技能就得去堅持練習,不斷的增進自己的技能。
  • 對於第三個問題:與老師部落格中的學習經驗有什麼共通之處?在老師的部落格中《優秀的教學方法---做教練與做中學》也包含了相關的內容

    技能的提升要「刻意訓練」
    低水平重複是不行的,訓練時間再長都沒用
    要擺脫「舒適區」,進入「學習區」學習
    要循序漸進,不能進入「恐慌區」
    --引用自《優秀的教學方法---做教練與做中學》

  • 我們每個人都應該學會“做中學(Learning By Doing)”針對某一種特定技術或技能進行重複性的練習,從而將其熟練掌握,並且要在練習的過程中進行思考,才能將自己所學的轉化為自己的知識。

有關C語言學習的調查

  1. 你是怎麼學習C語言的?(作業,實驗,教材,其他),與你的高超技能相比,C語言的學習有什麼經驗和教訓?在學習C語言的時候首先在上課的時候認真的聽講,然後在下課之後做一些練習(敲一遍課本上的代碼或做校園網上的題),把在課堂上的儘可能的吸收為自己的東西。想學好一門技能最重要的就是要不斷練習,要保證量,因為量變是質變的前提條件,但是也不能一昧的尋求量,要還要保證每次的練習是有效。
  2. 目前為止估算自己寫過多少行C代碼?理解的情況如何?量變引起質變,如何平衡質和量?我可能至少寫過3000行以上的代碼,比較難得地方還是有的,但總體而言還是不錯的。在每次的C語言練習中要保持量,但也不能僅僅保證量,也要關注品質,在高效的多次練習下才能有所收穫。
  3. 學過了C語言,你分的清數組指標,指標數組;函數指標,指標函數這些概念嗎?
  • 數組指標:指向數組的指標
  • 指標數組:數組內的元素都是指標,儲存指標的數組
  • 函數指標:指向函數的指標包含函數的地址,調用函數
  • 指標函數:函式宣告其傳回值為某個指標時,給函數返回一個地址,用於需要指標的運算式
  1. 學過了C語言,你明白檔案和流的區別和聯絡嗎?如何區分文字檔和二進位檔案?如何編程操作這兩種檔案?關於這方面的知識我不是很瞭解,我會通過百度去瞭解。
  2. 學過了C語言,你知道什麼叫面向過程程式設計嗎?它解決問題的方法是什嗎?面向過程程式設計是以什麼正在發生為主要目標進行編程,解決問題的方法是要對問題解決的過程進行編程去解決。
  3. 在C語言裡面,什麼是模組?你寫過多個源檔案的程式嗎?
    模組是將程式依照負責部分不同,拆分成多個部分,然後再拼裝成完整的程式。沒有寫過源檔案程式。
    學過了C語言,你知道什麼是“高內聚,低耦合”嗎?這個原則如何應用到高品質程式設計中?高內聚是指一個模組內各元素聯絡緊密,低耦合是指模組之間獨立性強,我們在設計時應盡量去滿足這個基本原則,使各個模組間功能獨立、程式設計思路明確。來自於《什麼是“高內聚,低耦合”》
  4. 學過了C語言,你如何把數組A的內容複寫到數組B中?如何尋找整數數組A中有沒有數字5?如何對整數數組A進行排序(從小到大,從大到小)?寫出相應的程式。
    數組A複製到數組B:
#include <stdio.h>#include <stdlib.h>main(){    char a[200] = "\0",b[200] = "\0";    int i;    printf("Input:\n");    scanf("%s",a);    for(i = 0;a[i] != ‘\0‘;i++)    {        b[i] = a[i];    }    printf("%s\n",b);}

尋找是否存在5:

#include <stdio.h>#define N 100int main(){    char a[N] = "\0";    int i;    printf("Input:\n");    scanf("%s",a);    for(i = 0;a[i] != ‘\0‘;i++)        if(a[i]==5)            printf("5 is existent.");    return 0;}

升序如下,降序同理

#include<stdio.h>main(){    int i, j, temp, a[10];    printf("ten numners:\n");    for (i=0;i<10;i++)        scanf("%d",&a[i]);    printf("\n");    for (j =0; j<9;j++)    {        for (i=0;i<9-j;i++)        {            if (a[i]>a[i+1])            {                temp =a[i];                a[i]=a[i + 1];                a[i+1]=temp;            }        }    }    printf("The sorted numbers:\n");    for (i = 0; i < 10; i++)        printf("%d ", a[i]);    printf("\n");}
  1. 寫一個程式,統計自己C語言共寫了多少行代碼。
    首先我並不知道該怎麼寫這個代碼,我想到可以計算"/0"或是“;”的個數。我學習了百度上其他人的代碼,首先要抓住一個關鍵詞EOF,這是一個電腦術語,為End Of File的縮寫,在作業系統中表示資料源無更多的資料可讀取。資料源通常稱為檔案或串流。可以理解為分行符號。
#include<stdio.h>int main(){    int n = 1;    int c;    while((c = getchar())!=EOF)    {        if(c == ‘\n‘) n++;    }    printf("%d\n",n);    return 0;}
  • 但是這段代碼並不正確,無法正真的統計出程式碼數,希望新學期得到老師的指導。
  • 你知道什麼是斷點嗎?給出自己偵錯工具的例子。 斷點就是程式執行到斷點處會停止。

  • 閱讀了老師的部落格怎樣快速閱讀一本書,並且看了各章ppt後,對每章提出了以下問題。
  • Java各章問題
  1. Java中如何編寫和儲存源檔案?如何正確的理解反編譯?
  2. 如何正確理解兩個相同類型的數組如果具有相同的引用,它們就有完全相同的元素?
  3. 怎樣正確利用“異或”運算?
  4. 類與C語言中結構體的區別是?
  5. abstract類使用意義以及無法理解開閉原則
  6. abstract類與介面的區別?
  7. 使用try~catch語句來處理異常與C語言case~default語句的區別?
  8. Integer類調用其類的方法?
  9. JFrame() 建立視窗的方法
  10. 位元組輸入(出)流與字元輸入(出)流如何串連?
  11. 串連MySQL資料庫的方式
  12. 進程與線程的區別是?
  13. 如何讀取URL中的資源?
  14. 如何進行圖形的布爾運算?
  15. 鏈表的使用(痛點)。
  • Java學習目標
  1. 首先要獨立思考,學會獨自解決問題。實在解決不了的問題通過網路,老師,同學等去解決。
  2. 要學會大量的敲代碼,努力要把課本上的代碼敲一遍,孰能生巧,加強對代碼的理解。
  3. 獨立的去編寫一些代碼去解決一些實際問題,平時也要去看一些演算法的書,學習一些演算法,增強自己代碼的編寫能力。多看一些關於本專業的書,加強自己的專業知識。
  4. 要學會去堅持,並且嚴格要求自己,只有這樣才能學有所成。

    程式設計入門,最有效方法要積極主動敲代碼。
    --引自與《積極主動敲代碼,使用JUnit學習Java》

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.