作業要求:【https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2293】
第四次作業(條件)題目7-2 高速公路超速處罰
實驗代碼:
#include<stdio.h>
int main()
{
double a,b,x;
scanf("%lf %lf", &a,&b);
x=100*(a-b)/b;
if(x<10){
printf("OK");
}
else if(x<50)
{
printf("Exceed %.0f%%. Ticket 200\n", x);
}
else if(x>=50){
printf("Exceed %.0f%%. License Revoked\n", x);
}
return 0;
}
解題思路
1:定義實際速度和規定速度;
2:輸入兩個數作為a,b的值;
3:給出x與a,b的關系式 x=100*(a-b)/b,並根據a,b 的輸入值得到x的值;
4:判斷x是否小於15,如果小於15,那就就輸出OK;不小於15的話且x小於50,就將輸入的值代入,輸出Exceed x%. Ticket 200;
若兩個都不符合時,就將輸入的值代入,輸出Exceed x%. License Revoked;
5:輸出結果。
流程圖
運行截圖
調試截圖
心得體會
做此題時還不是很熟練的運用if else的結構,通過此題的訓練,加上同學老師的知道,對此結構又有了更深刻的理解!
7-7 計算火車運行時間
#include <stdio.h> int main() { int a,b,c,d,e; scanf("%d %d",&a,&b); c=a/100*60+a%100; d=b/100*60+b%100; e=d-c; printf("%02d:%02d\n",e/60,e%60); return 0;}
做題思路
1:定義四個整型變量 a,b,c,d,e;
2:輸入a,b的值,a代表出發的時間,b代表到達的時間;
3:將a和b換算成分鍾,記為c和d,公式中的“a/100*60”表示將小時換算成分鍾。
4 :“e=d-c”表示到達時間和出發時間的差,並將值賦予e,這個值表示的是分鍾;
5:“e/60”表示將分鍾換算成小時,“e%60”表示剩下的余數為分鍾;
6:最后按“小時:分鍾”的格式輸出。
流程圖
程序調試圖
出現問題
一開始沒有除以60導致編譯錯誤,后來經過同學的指導下明白了上述方法,並進行了改正,令自我得到了提升!
作業點評
1 http://www.cnblogs.com/yangzhenghui/p/9900452.html
2http://www.cnblogs.com/wu1263344154/p/9915201.html
3 https://www.cnblogs.com/zst1/p/9912320.html
個人總結
本周我學習了switch case的結構,我的收獲很大,明白了在寫有選擇的程序時不僅可以用if-else的結構,還可以用switch case的結構,這為我以后的寫程序又添上了重要的一筆。
本周學習了許多新的知識,在這些知識中我覺得關於switch的結構我應用的還不是很熟練,還需要加強練習,我相信我自己一定可以的。