第二次隨筆作業
阿新 • • 發佈:2018-11-02
一.對pta作業的總結
第三週作業:這周作業我花時間較長的是第七題:計算火車執行時間,本題要求根據火車的出發時間和達到時間,編寫程式計算整個旅途所用的時間。
我做了兩遍,一遍是使用if語句進行小時上的借位,另一遍是將小時轉化成分鐘直接相減而得
//if語句進行小時上的借位
程式碼,文字描述設計思路
#include<stdio.h> int main() { int a,b,c,d,f,g; scanf("%d %d",&a,&b); c=a%100,d=b%100;//各取兩個時間的分鐘數 f=d-c;//分鐘數相減 g=(b-a)/100%100;//取兩時間在小時上的差if(f<0)//判斷是否需要借位 f=f+60,g=g;//因為上方求小時上的差時,需要借位的話已經向小時上借位了,所以小時數不需要減一 else f=f,g=g; printf("%02d:%02d",g,f); return 0; }
流程
錯誤除錯和解決辦法
這種方法我在小時數是否減一的地方糾結了一會,後來發現在相減的時候已經借位了。
//將小時轉化成分鐘直接相減而得
程式碼,文字描述設計思路
#include<stdio.h> int main() { int a,b,c,d,f,g; scanf("%d %d",&a,&b); c=(a/100%100)*60+a%100;//將第一個時間全轉化為分鐘數 d=(b/100%100)*60+b%100;//將第二個時間全轉化為分鐘數 f=(d-c)/60%100,g=(d-c)%60;//,提取出小時數、分鐘數,f為小時數,g為分鐘數 printf("%02d:%02d",f,g); return 0;
}
流程
錯誤除錯和解決辦法
這種方法就只是簡單的數學計算,沒出現什麼錯誤
第四周作業:這周作業我覺得有點難度的是第三題 計程車計價
本題要求根據某城市普通計程車收費標準編寫程式進行車費計算。具體標準如下:
- 起步里程為3公里,起步費10元;
- 超起步里程後10公里內,每公里2元;
- 超過10公里以上的部分加收50%的回空補貼費,即每公里3元;
- 營運過程中,因路阻及乘客要求臨時停車的,按每5分鐘2元計收(不足5分鐘則不收費)。
這題內容是對計程車計費最後內容的實現,我覺得更有實際意義
程式碼,文字描述設計思路
我的方法是將里程收費與時間收費分開計算,然後再加起來
#include<stdio.h> int main() { int b; double a,c,d,e; scanf("%lf %d",&a,&b);//輸入行駛里程與等待時間 if(a<=3)//判斷歷程在那個區間內,並計算出在該區間內在里程上所花費的錢 {c=10;} else if(3<=a&& a<=10) {c=10+(a-3)*2;} else {c=10+(a-3)*2+(a-10)*1;} d=b/5*2;//計算有幾個五分鐘並得出在分鐘上花費的錢 e=c+d;//合計在里程、時間上花費的錢 printf("%.0f",e); return 0; }
流程
錯誤除錯和解決辦法
該題也只是分段函式的計算,沒有什麼問題出現
二、總結和學習進度條
這幾周通過自學與課外輔導的學習,感覺自己對程式碼的熟練的有了很大的提升,學會了很多函式的使用。
目前大多數問題都還較為簡單,還能自己解決或在網際網路上學習下函式定義後自己組織完成,其中大多數問題還是集中在打錯字導致的編譯錯誤,還是需要多多練習對程式碼函式的理解與應用。
這幾周學習了很多c語言的基本語句,基本在這兩週能把他們全部涉及一遍,接下來就需要提高對於他們的理解與運用