作業要求:https://edu.cnblogs.com/campus/hljkj/CS201802/homework/2292
第三次作業:7-3 分段計算居民水費
# include <stdio.h>
int main(void)
{
double x,y;
scanf("%lf",&x);
if(x<=15){
y = 4*x/3;
}
else{
y = 2.5*x-17.5;
}
printf("%.2f\n",y);
system("pause");
return 0;
}
解題思路:
1.定義兩個雙浮點型變量:x,y
2.如果x<=15,進行y=4*x/3
如果x>15,進行y=2.5*x-17.5
3.輸出y,兩位小數的精度
流程圖:

運作結果:
輸入了一個[0,15]區間的數字,輸入結果卻是0;
後來通過流程圖我發現,x<0那一步是多餘的,然後把那一步去掉了:
輸出結果還是0;然後開始進行調試,因為在[0,15]區間的計算出了問題,是以在那裡設定了斷點:
通過調試,發現不是那裡的問題,然後我詢問了同學,他說scanf裡不用加.2,然後我把.2去掉了然後運作:
然後得出了正确答案。
第四次作業:7-1計算個人所得稅
#include <stdio.h>
int main ()
{
int x;
double y;
scanf("%d",&x);
if(x <= 1600){
y = 0;
}
else if(x > 1600 && x <= 2500){
y = 0.05 * (x - 1600);
}
else if(x > 2500 && x <= 3500){
y = 0.10 * (x - 1600);
}
else if(x > 3500 && x <= 4500){
y = 0.15 * (x - 1600);
}
else if(x > 4500){
y = 0.20*(x - 1600);
}
printf("%.2f\n",y);
return 0;
}
1.定義整型變量x,和雙浮點型變量y
2.根據題目給的文字,輸入計算函數
3.輸出y,精準度為小數點後兩位
一開始我在devc++上運作,并沒有顯示錯誤,但是在PTA上卻有報錯,然後我進行了調試:
然後發現調試也沒有錯誤,然後我仔細檢查了輸入的内容,發現在稅率的輸入格式不一樣,然後進行了修改
然後将其複制粘貼到PTA中,答案正确。
本周總結:
經過這一周的學習,我學會了條件語句的相關内容,在反複改錯的過程中知道一些知識,老師還講了switch語句,通過課上的練習和課下的練習題,對switch語句已經掌握的差不多。還粗略了解了ASCII碼的一些相關内容。
問題和難點:
在做練習題時,急于做題,不認真地閱讀題目要求,好多次因為輸出格式而報錯,浪費了很多時間;
還有在打代碼時會有一些因為格式不統一的報錯;
在了解代碼時有些困難,詞彙量積累不夠。
部落格字數、代碼行數:
作業點評:http://www.cnblogs.com/wafx/p/9898522.html
https://www.cnblogs.com/xiaofengqaq/p/9845665.html
https://www.cnblogs.com/sevenG/p/9911455.html