標籤:老師 amp new 0.00 第四次 語句 bsp scanf 比較
一、實驗題目,設計思路,實現方法
實驗題目1:第三次實驗 計算分段函數
(7-7 計算火車已耗用時間)
設計思路:由題意可知,需對輸入的兩個時間進行處理,然後分鐘相減、小時相減,若到達時的分鐘小於出發時的分鐘,需對到達時的分鐘做“借位”處理。
實現方法:若到達時的分鐘大於等於出發時的分鐘,則小時、分鐘間直接相減,得出火車已耗用時間;若到達時的分鐘小於出發時的分鐘,則使到達的分鐘加60後與出發時分鐘相減、使到達時的小時減1後與出發時的小時相減,得出火車的已耗用時間。
實驗題目2:第四次 計算分段函數和迴圈NEW(4-3 求N分之一序列前N項和)
設計思路:利用for語句的迴圈,使每次的結果都累加到S上。
實現方法:設A、S,使A=1,且當A<=N的時候有A加一的迴圈,同時計算每個A對應的數值1.0/A,使得S=S+1.0/A,從而S等於N分之一序列前N項和。
實驗題目3:第四次 分支+迴圈 加強版(4-2-5 逆序的三位元)
設計思路:分別計算出輸入的三位正整數的百位、十位、個位,再將個位乘上一百、十位乘上十、百位乘上一,相加得到逆序的三位元。
實現方法:將原三位元除以100得到百位元a,將原三位元減去a乘100後除以10得到十位元b,將原三位元先減去a乘100再減去b乘10後得到個位元c,最後將c乘100加上b乘10加上a得到逆序的三位元。
二、來源程式
實驗題目1:
第三次實驗 計算分段函數
(
7-7 計算火車已耗用時間
)
int A,B,C,D,E,F,hh,mm;
scanf("%d %d",&A,&B);
D=A%100;/*01分*/
C=(A-D)/100;/*12*/
F=B%100;/*30分*/
E=(B-F)/100;/*15*/
if(D<=F){
hh=E-C;
mm=F-D;
}
else{
hh=E-1-C;
mm=F+60-D;
}
printf("%02d:%02d",hh,mm);
實驗題目2:
第四次 計算分段函數和迴圈NEW(4-3 求N分之一序列前N項和)
int A,N;
double S;
scanf("%d",&N);
S=0.00;
for(A=1;A<=N;A++){
S=S+1.0/A;
}
printf("sum = %.6f",S);
實驗題目3:第四次 分支+迴圈 加強版(4-2-5 逆序的三位元)
int a,b,c,A,B;
scanf("%d",&A);
c=A%10;
b=(A%100-c)/10;
a=(A-c-10*b)/100;
B=c*100+b*10+a;
printf("%d",B);
三.遇到的問題及解決方案,心得體會
遇到資訊量較大的題目要整理題幹、提取有用的資訊,靈活運用各種語句來解決問題。尤其需注意一些如賦值“=”和等於“==”的區別、if語句小括弧內的比較只能兩項相比較等細節問題。經過長時間的練習和老師的指導,我的C語言一定會越來越厲害!
C語言第一次實驗報告