某大學全校都開設C語言課程,每學年結束都按成績進行統計。請編寫程序,輸入優秀、良好、中等、及格和不及格的人數,輸出成績統計表。
輸入樣例
36
275
1806
2194
101
輸出樣例
Rank Number
----------------
Excellent 36
Good 275
Medium 1806
Pass 2194
Fail 101
----------------
Total 4412
第一題錯誤較多,主要是以為輸出必須用循環來控制,想過設多個變量輸入,但是通過翁愷老師的視頻里講最好不要代碼復制,這是代碼質量不良的表現,最后呈現的代碼有點復雜,還有占格問
題,當時沒有想清楚。以下是我做的修改:

輸入年份year、月份month,判斷該月的天數。閏年:能被4整除但不能被100整除或者能被400整除的年份是閏年。
輸入格式:
測試數據有多組,處理到文件尾。對於每組測試,輸入兩個整數,表示年份year和月份month。
輸出格式:
對於每組測試,輸出對應年月的天數。
輸入樣例:
2020 2
2020 4
輸出樣例:
29 30

這題思路沒什么問題,但是不小心把/當%用了,導致一直報錯,還沒有發現原因,以下是修改后的代碼:
根據讀入的高,畫出一個ST字符交替的倒三角形。
輸入格式:
輸入數據含有不超過50個正整數n(1≤n≤30)。 以鍵盤輸入^Z或遇到文件結束符時結束數據輸入。
輸出格式:
輸出以n為高的ST字符交替的倒三角形,畫出每個三角形時都應另起一行。
輸入樣例:
3 10
輸出樣例:
STSTS
STS
S
STSTSTSTSTSTSTSTSTS
STSTSTSTSTSTSTSTS
STSTSTSTSTSTSTS
STSTSTSTSTSTS
STSTSTSTSTS
STSTSTSTS
STSTSTS
STSTS
STS
S

這題犯了上題一樣的錯誤,將/當%用了,后面輸出的for循環里的條件有點小問題,以下做了修改:
現有96個端口狀態,用3個無符號整型ua(95~64),ub(63~32),uc(31~0)組合起來的96位二進制數來表示,每位二進制數的1、0表示其正常和故障狀態。
輸入一個tag位,將tag位上二進制數置1.
tag位表示其在96位中所處的位數(在96位中從低向高從0至95)
輸入格式:
第一行輸入三個無符號整數,表示ua,ub,uc
第二行輸入一個整數tag。
輸出格式:
若tag值不在0到95之間,則輸出Error
,否則輸出轉換后的ua,ub,uc
輸入樣例:
1 2 3
-2
輸出樣例:
Error
輸入樣例:
1 2 3
10
輸出樣例:
ua=1,ub=2,uc=1027

最后呢,總結幾個方面:(1)學習情緒上,不要過於緊張,平常心對待,盡力學,才能在考試時充分發揮實力;
(2)學習方法上,多自己探索,不是盲目地看視頻,要勤思考,將他人的方法轉化為自己容易接收並記住的,形成自己的思考體系;
(3)學習內容上,位運算顧名思義是按位運算的,在一行中輸出數字的占位可以通過%nd來實現,循環條件里可以放輸入語句,使用遞歸時要注意
調用函數和輸出位置,這直接影響輸出順序。