1. 程式人生 > >程式設計基礎(C語言)課程主頁-2016級

程式設計基礎(C語言)課程主頁-2016級

  時間很快,2016級的小鮮肉們已經在猜測老賀長什麼樣子了。
  從線上作業到翻轉課堂,幾屆的學生跟著我受了不少苦。話雖這麼說,並不代表2016級的就要輕鬆了(老賀虛偽到底!)。不過,苦孩子們,享受吧。
  話說回來,老賀在這一屆身上也不會太輕鬆。翻轉課堂的模式不陌生了,但新生出來的想解決的問題並不少,讓學生學得有效、學得有趣、學得輕鬆是我的追求。做過不少資源,但隨著培養方案的變化,選用教材的變化,中間的調整、補充要花不少時間。最大的變化,是實踐體系要完全改變,不再按以前歷屆的安排去做,更多按課程組的共識,實踐專案從OJ平臺找,主要的戰場,也就在這裡了。
  要延續的是,用部落格交作業所帶來的紅利不想丟。同學們在OJ上做完實踐,將要通過部落格提交解題報告。這樣做是有益的,儘早接觸行業,這是到CSDN“混”的最大益處,儘管這和學校的考試可以並不搭邊。當前同學們在OJ上解題存在的問題,是一旦AC,便萬事大吉。這中間缺一個環節——總結。我將要求我的學生在OJ上闖關後,通過釋出博文,完成的九十步之後的那十步,收效可是翻倍的!
  好吧,2016級的同學們,我們就要啟程了!

學生清單

楊河生  景怡樂  李忠林  張明明  何定欽  夏曉林  鄧 哲  宗意行  
馮婉琪  楊公棟  張 威  單長喜  郭 聰  胡日坤  倫棟才  於 航  
閆春相  牟肖衝  蘇 浩  姜淇瀚  蔡 偉  王 朝  李偉明  顏丙齊  
曹欣宇  畢春超  王興振  馬春澎  賈如杉  展 一  崔 翔  胡寅生  
張 昊  汪瑩莉  張學偉  錢夢雨  尤文敏  李卓錕  張 旺  何知令  

課程材料

第4周 程式設計初體驗(第1講)

第5周 程式設計思想啟蒙(第2講)

實踐任務:連結
參考解答:
1-Raptor程式設計:

圓的周長 矩形的面積  low or high! 雙分支選擇 分段函式 求和 Error或求和 三色球問題 斐波那契數列 
2-C語言簡單選擇結構程式:正差值答 三數最大值 發工資

第7周 算術運算與選擇結構程式設計(第3講)

A. 課前自學目錄

0301數值資料型別及表示
0302變數的使用  程式閱讀
0303算術運算子與算術表示式 自選實踐專案
0304表達“條件”——條件表示式
0305將條件“組合”起來——邏輯表示式 
0306用if語句實現分支結構 自選實踐專案
0307if語句的巢狀 程式閱讀  自選實踐專案
0308用switch語句實現多分支結構 

程式閱讀
0309利用switch語句解決問題  自選實踐專案 
補充資料: C語言中數學函式  C語言中的運算子

B. OJ實踐

題目-算術運算與選擇結構
參考解答(必選):(1021)按要求輸出 (2493)兩個整數的四則運算 (2679)百位數分解 (2681)求三角形面積 (2013)一元二次方程Ⅱ (1030)求獎金總數
  

第8周 迴圈程式設計(第4講)

A. 課前自學目錄

0401迴圈思想啟蒙:輸出小星星 課件原始碼  程式閱讀  自選實踐專案
0402三種迴圈語句 課件原始碼  程式閱讀  自選實踐專案
0403用迴圈累加 課件原始碼  程式閱讀  自選實踐專案
0404問題求解方法——迭代 課件原始碼   自選實踐專案
0405迴圈巢狀 課件原始碼   自選實踐專案
0406用break和continue改變流程 課件原始碼  程式閱讀  自選實踐專案
0407問題求解方法——窮舉 課件原始碼   自選實踐專案
0408除錯利器——程式的單步執行
補充:OJ平臺中不同輸入要求的處理

B. OJ實踐

題目-用迴圈解決問題
參考解答(必做):(2399)求倒數和 (1992)分數序列 (1034)求值 (1039)小球自由下落 (2001)列印數字圖形

C. 實踐專案

問題求解方法:窮舉思維解題 
參考解答:小明借書 水仙花數 雞兔共籠 換分幣 年齡幾何 三色球問題 找數字 誰是小偷 汙損的單據|

第9周 其他運算、字元資料、輸入輸出(第5講)

A. 課前自學目錄

0501 識別符號及其命名
0502自增與自減
0503數值型資料的儲存原理 課件原始碼  程式閱讀 
0504賦值運算子與賦值表示式 課件原始碼
0505逗號運算子與逗號表示式
0506條件運算子和條件表示式 課件原始碼
0507字元資料及字元型別  課件原始碼   自選實踐專案
0508用迴圈處理文字 課件原始碼   自選實踐專案
0509資料的輸入 課件原始碼  程式閱讀
0510資料的輸出 課件原始碼  程式閱讀
B.OJ實踐
題目-用迴圈解決問題-II
參考解答:(1032) 統計字元個數 (1923) ASCII碼排序 (2506) 切面條 (1609) 等比數列 (2472) 大帆玩英雄聯盟 (1915) 第幾天 (2698) 大獎賽計分 

第10周 應用問題求解(第6講)

A. 課前自學目錄

0601 C語言的程式結構與語句
0602 C語言的庫函式
0603位運算及其應用 課件原始碼  程式閱讀
0604演算法的基本概念 課件原始碼
0605問題求解——求素數 課件原始碼   自選實踐專案
0606將資料輸出到文字檔案 課件原始碼  
0607從文字檔案中讀入資料 課件原始碼   自選實踐專案

B. 實踐專案

第11周 初識函式(第7講)

A. 課前自學目錄

0701 模組化程式設計及C語言中的函式 課件原始碼
0702 體驗自定義函式 課件原始碼
0703 函式的返回值 課件原始碼
0704 函式的引數 課件原始碼
   —-程式閱讀  自選實踐專案—-
0705 函式的宣告、定義和呼叫 課件原始碼
0706 函式的巢狀呼叫 課件原始碼
   —- 程式閱讀  自選實踐專案—-
0707 除錯技術:進入函式內部去 課件原始碼  自選實踐專案

B. OJ實踐

題目-初識函式
參考解答(必做):(2964)查閏年 (2963)判斷三角形 (2966)迴圈畫三角形 (2962)日期妙算星座 (1047)求兩個整數的最大公約數和最小公倍數 (2405)牛頓迭代法求根 (2965)趣味取小數

第12周 遞迴函式與巨集命令(第8講)

A. 課前自學目錄

0801 認識遞迴 課件原始碼
0802 遞迴法問題求解 課件原始碼
0803 遞迴經典:漢諾塔 課件原始碼
    —-程式閱讀  自選實踐專案—-
0804 一個程式,多個檔案 課件原始碼
0805 預處理之巨集定義 課件原始碼 程式閱讀 
0806 預處理之檔案包含 課件原始碼
0807 預處理之條件編譯 課件原始碼 程式閱讀 

B. OJ實踐

C. OJ實踐

第13周 變數的儲存類別與作用域、指標初識(第9講)

A. 課前自學目錄

0901 全域性變數和區域性變數 課件原始碼
0902 變數的儲存類別 課件原始碼  程式閱讀
0903 靜態函式與外部函式
0904 外部全域性變數和靜態全域性變數 課件原始碼
    —-程式閱讀  自選實踐專案—-
0905 指標及其運算 課件原始碼 程式閱讀
0906 引數傳遞方式:傳值與傳地址 課件原始碼 程式閱讀
0907 返回指標的函式 課件原始碼 

B. 程式閱讀

閱讀程式-原始碼連結

C. OJ實踐

題目-實踐
參考解答(必做):2969: 學生成績的處理 2972: 從檔案中讀資料

第14周 陣列(第10講)

A. 課前自學目錄

1001 陣列的引入 課件原始碼
1002 一維陣列的定義和引用 課件原始碼
1003 一維陣列應用二三例 課件原始碼
1004 越界的後果 課件原始碼
    —-程式閱讀 程式填空   自選實踐專案—-
1005 用指標法訪問陣列元素 課件原始碼
1006 陣列名作為函式引數 課件原始碼
1007 指標作函式引數 課件原始碼
    —-程式閱讀  自選實踐專案 閱讀原始碼(洗牌)—-
1008 二維陣列及其定義 課件原始碼
1009 二維陣列元素的引用 課件原始碼
    —-程式閱讀 程式填空   自選實踐專案—-
補充案例:查詢演算法原始碼 排序演算法原始碼 程式閱讀  自選實踐專案

B. 實踐

題目-陣列初步
參考解答:1- 陣列大折騰  2- 成績處理函式版 3- 折騰二維陣列 4- 矩陣運算

C. OJ實踐

題目-實踐
參考解答(必做):2000 陣列逆序 1045 插入有序陣列中 2747 進位制轉換 1044 矩陣對角線元素之和

第15周 指標應用和字串(第11講)

A. 課前自學目錄

1101 指標的運算 課件原始碼
1102 使用指標操作二維陣列 課件原始碼
1103 多維陣列作函式引數 課件原始碼
    —-程式閱讀  自選實踐專案—-
1104 動態儲存管理與動態陣列的實現 課件原始碼  自選實踐專案
1105 字串、字元陣列、字元指標 課件原始碼
1106 字元和字串處理函式 課件原始碼
    —-程式閱讀 程式填空  自選實踐專案—-
1107 操作字串陣列 課件原始碼 程式閱讀  自選實踐專案
1108 main函式的引數 課件原始碼  自選實踐專案

B. OJ實踐

題目-實踐題目
參考解答(必做):2886: 大寫改小寫 2568: 字串逆序輸出 2279: 字串分段(串) 1052: 兩個字串連線 2417: 字串長度 2284: 按長度截斷 2274: 字串插入 2802: 判斷字串是否為迴文 2569: 統計字串種類 2424: 字串比較 2874: 包含B的字串 2305: 你就成了我 2290: 字串的修改 

第16周 結構體及其他資料型別(第12講)

A. 課前自學目錄

1201 體驗結構體 課件原始碼 
1202 結構體成員的引用 課件原始碼 
1203 結構體陣列及其應用 課件原始碼 
    —- 自選實踐專案—-
1204 指向結構體的指標 課件原始碼 
1205 當結構體成員為指標 課件原始碼
  —- 自選實踐專案—-
1206 聯合體及其應用 課件原始碼 應用例
1207 列舉型別及其應用 課件原始碼  自選實踐專案
1208 自定義型別 課件原始碼 

B. 程式設計實踐

題目-實踐題目
參考解答:1-複數結構體 2-學生成績處理 3-點結構體

C. OJ實踐

題目-實踐題目
參考解答(必做):2428-本年中是第幾天 2877- 職工資訊結構體 2878- 學生資訊排序

第17周 複習課(第13講)

(待設計)