C語言I作業07


這個作業屬於那個課程 C語言程序設計II
這個作業要求在哪里 C語言I博客作業07]
我在這個課程的目標是 理解並使用switch語句
這個作業在那個具體方面幫助我實現目標 完成PTA作業和教材鞏固
參考文獻 switch語句的執行流程

一、PTA作業

1.1 計算天數

本題要求編寫程序計算某年某月某日是該年中的第幾天。

1.1.1 數據處理

數據表達:定義了三個整型變量y,m,d為年月日的縮寫;再把每個月的case n:number=(第(N-1)個月以及之前月之和)變化表達式列出;
數據處理:先定義整型int變量,再用if-else語句判斷平閏年,最后輸出天數,平年閏年在2月份以后會有所不同。
偽代碼:
include<stdio.h>
int main()
{
int 年,月,日,
scanf("%4d四位數年/%2d二位數月/二位數日%2d",&year,&month,&day);
if如果(輸入的年份是閏年))
{
switch(月份)
{
case 1:表達式;break;
...
case 11:表達式;break;
}
}
else 平年
{
switch(月份)
{
case 1:表達式;break;
...
case 11:表達式;break;
default :表達式;break;
}
}
輸出printf("%d\n",day);
return 0;
}

1.1.2 實驗代碼截圖

1.1.3 造測試數據

輸入數據 輸出數據 說明
2000/06/23 175 2000年6月23日是這年的第175天
2008/10/01 275 2008年10月1日是這年的第275天
2019/01/01 1 2019年1月1日是這年的第1天

1.1.4 PTA提交列表及說明


編譯錯誤:忽略了這一步case 1:printf("%d\n",d);break;

1.2統計學生成績

本題要求編寫程序讀入N個學生的百分制成績,統計五分制成績的分布。百分制成績到五分制成績的轉換規則:
大於等於90分為A;
小於90且大於等於80為B;
小於80且大於等於70為C;
小於70且大於等於60為D;
小於60為E。

1.2.1 數據處理

數據表達:共定義了九個變量:N為學生總數,i為控制變量,grade為分數,w為變量,A,B,C,D,E為五分制分數;
數據處理:定義整型變量后,for結構中嵌套了switch語句
偽代碼:

include <stdio.h>

int main()
{
int 學生總數,控制變量,分數,變量,五分制分數;
int A=0,B=0,C=0,D=0,E=0;
scanf("%d",&n);
if(n>0)
{
for(i=1;i<=n;i++)
{
scanf("%d",&grade);
w=grade/10(判斷五分制分數等級);
switch(w)
{
case 10:條件;break;
case 9:條件;break;
case 8:條件;break;
case 7:條件;break;
case 6:條件;break;
default:條件;break;
}
}
}
printf("%d %d %d %d %d",輸出各個成績);
return 0;
}

1.2.3 造測試數據

輸入數據 輸出數據 說明
3 12 45 67 0 0 0 1 2 A等級0個,B等級0個,C等級0個,D等級1個,E等級2個
4 7 9 45 80 0 1 0 0 3 A等級0個,B等級1個,C等級0個,D等級0個,E等級3個
5 4 12 45 67 99 1 0 0 1 3 A等級1個,B等級0個,C等級0個,D等級1個,E等級3個

1.2.4 PTA提交列表及說明


default:E++;break;忽略了default
for語句沒用大括號括起來。

2.代碼互評

同學代碼截圖

我的代碼截圖

定義了每個變量的縮寫,打代碼時候方便些,全稱會麻煩一些,這個專業偷懶是非常有必要的。
我用的平年閏年分開計算,運用if-else語句,該同學列出閏年的例子,推出平年。
同學代碼截圖

我的代碼截圖

該同學用了數組知識,提前預習后面知識,是我學習的榜樣。

3.學習總結

3.1 學習進度條

周/日期 這周所花的時間 代碼行 學到的知識點簡介 目前比較困惑的問題
第六周 18小時 370行 如何用 MinGW-w64 來編譯C程序
第七周 16小時 400行 運用if-else語句 特殊符號運用不熟練
第八周 24小時 378行 掌握for語句循環的運用
第九周 25小時 264行 學會使用了自定義函數
第十周 19小時 164行 熟練分支結構,邏輯符的運算 時常編譯錯誤
第十一周 21小時 158行 switch語句的使用

3.2 累積代碼行和博客字數

時間 博客字數 代碼行數
第四周 520 55
第五周 610 110
第六周 0 400
第七周 2100 450
第八周 2400 560
第九周 3400 670
第十周 4201 780
第十一周 5412 900

3.3 學習內容總結和感悟

3.3.1 學習內容總結

3.3.2 學習體會

學習C語言一短時間了,從開始的懵逼到現在的有些頭緒了,但還是不熟練,練習欠佳,需要多加練習。學會使用了switch語句,難度越高越考驗我的耐力,繼續加油,干就完事了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM