這個作業屬於哪個課程 | C語言程序設計 |
---|---|
這個作業要求在哪里 | 作業 |
我在這個課程的目標是 | 學會使用C語言,並做一個屬於自己的小程序 |
這個作業在哪個具體方面幫助我實現目標 | 憑多做題來熟悉已學內容;豐富自己的C語言知識 |
參考文獻 | C語言程序設計(第三版);百度 |
1.PTA實驗作業
1.1 自從湖南農業大學、吉首大學和懷化學院組織程序設計課程聯考以后,舉辦聯考的經驗越來豐富。尤其是在使用PTA系統作為考試平台之后,聯考工作得到了很多學校的認可和支持。所以,現在參與聯考的學校比較多。為了便於區分考生,考生賬號的第一位是學校代號。1代表Hunan Agricultural University,2代表Jishou University,3代表Huaihua University,4代表Aerospace University,5代表Ocean University。 請編寫程序根據考生的賬號區分考生的學校。
1.1.1數據處理
數據表達:本題用了兩個整型變量:account、choice,分別代表正整數和該正整數的第一位。account通過輸入得出,choice通過account/100000賦值得出。
數據結構:
表達式:choice = account/100000
結構式:switch分支結構
偽代碼:
定義整型變量
輸入正整數
choice1~5 →賦正整數第一位數字
choicedefault→其他大學
返回
1.1.2實驗代碼截圖
1.1.3 造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
123456 | Hunan Agricultural University | 考生區分在Hunan Agricultural University考試 |
999999 | Other University | 考生區在Other University考試 |
456789 | Aerospace University | 考生區分在Aerospace University考試 |
1.1.4 PTA提交列表及說明
提交列表說明:
部分正確:OtherUniversity 兩個單詞之間沒有打空格。
1.2本題要求編寫程序讀入N個學生的百分制成績,統計五分制成績的分布。百分制成績到五分制成績的轉換規則:
大於等於90分為A;小於90且大於等於80為B;小於80且大於等於70為C;小於70且大於等於60為D;小於60為E。
1.2.1數據處理
數據表達:本題定義了八個整型變量:N,grade,choice,A,B,C,D,E,其中N代表學生數,grade是成績,choice是分數前面一個數字,A,B,C,D,E代表五個等級。(五分制)
數據結構:
表達式:choice=grade/10
結構式:for循環語句;switch分支結構
偽代碼:
定義整型變量;
for循環 輸入成績;
choice=grade/10;
switch語句積累五個不同等級的人數
輸出結果
1.2.2實驗代碼截圖
1.2.3 造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
7 77 54 92 73 60 65 69 | 1 0 2 3 1 | A區1人、B區0人、C區2人、D區3人、E區1人 |
7 76 53 97 75 64 68 62 | 1 0 2 3 1 | A區1人、B區0人、C區2人、D區3人、E區1人 |
1.2.4 PTA提交列表及說明
提交列表說明:
①break忘記打
②case和后面的數字沒有用空格隔開
③忘記寫輸出語句
2.代碼互評
同學代碼截圖
自己代碼截圖
代碼比較
①首先從整體上來看:我的代碼趨勢呈右下走,毫無美觀可言,而該同學的代碼整齊又順眼。
②從內容上來看:同學用的是(N>=400&&<500),分數在四百到五百之間,則輸出某某學校。而我的代碼是只要大於某一個分數就能去他對應的學校,比起該同學的代碼顯得有些不嚴謹。
同學代碼截圖
自己代碼截圖
代碼比較
①從整體上看,我的代碼比較精煉,而該同學的代碼長卻易懂。
②從內容上看,我只用了一個switch語句,而該同學用了兩個。
3.學習總結
3.1 學習進度條
周/日期 | 這周所花的時間 | 代碼行 | 學到的知識點簡介 | 目前比較迷惑的問題 |
---|---|---|---|---|
10/14-20 | 5h | 100行 | for循環結構 | 不能夠熟練for語句 |
10/20-27 | 7h | 120行 | 自定義函數 | 對定義和調用函數知識點上還是很模糊 |
10/28-3 | 8h | 380行 | char字符型 | 有些代碼所用的格式 |
11/4-10 | 8h | 150行 | switch語句 | 怎么尋找到解題的正確思路 |
3.2 累積代碼行和博客字數
3.3 學習內容總結和感悟
3.3.1 學習內容總結
3.3.2 學習體會
本周學會了switch語句,用途和if-else語句差異不大,雖然if-else語句基本上可以解決所有問題,但是在有些題型方面if語句比較繁瑣而switch語句就要簡潔許多。每周學習一點點小知識,然后用課余時間慢慢消化,這樣剛剛恰到好處!知識點越來越多,還需勤加做題,鞏固練習!