標籤:簡單 學生 ref span src 調試過程 int png div
題目
題目一:求交錯序列前N項和
1.實驗代碼
#include <stdio.h>int main(){ int n , i , b ; double sum = 0 , a , c ; scanf("%d",&n); a = 1; b = 1; for( i = 1 ; i <= n ; i++) { c = a * i / b; sum += c; a = -a; b += 2; } printf("%.3f",sum);}
2.設計思路
①演算法
第一步:定義變數。
第二步:輸入序列項的數目n。
第三步:使用迴圈語句,i的初始值為1,當i小於等於項數N時,迴圈繼續,c = a * i / b (c為序列中每一項的值,a的值用來確定每一項的正負,i表示每一項的分子,b表示每一項的分母),sum = sum + c (計算序列和,sum初始值為1),a = -a(序列中奇數項為正,偶數項為負,a初始值為1),b = b + 2(相鄰兩項中,後一項比前一項大2,b初始值為1).
第四步:輸出sum(即序列的前n項和)。
②流程圖
3.本題未遇到問題
4.本題PTA提交列表
題目二:統計學生平均成績及及格人數
1.實驗代碼
#include<stdio.h>int main(){ int n , i , count = 0; int a[10001]; double average , sum; scanf("%d",&n); for( i = 0 ; i < n ; i++) { scanf("%d",&a[i]); sum += a[i]; if( a[i] >= 60) { count++; } } if(n>0) { average = sum / n; } printf("average = %.1f\n",average); printf("count = %d\n",count);}
2.設計思路
①演算法
第一步:定義變數。
第二步:輸入學生人數n。
第三步:使用迴圈語句,i的初始值為0,當i < n時,迴圈繼續,輸入a[i](a[i]為學生的成績組),sum = sum + a[i](sum為學產生績之和)。
第四步:判斷n > 0時(有學生存在),平均成績 = 成績總和 / 人數。
第五步:輸出平均成績和及格人數。
②流程圖
3.本題調試過程所遇問題
思考不夠全面,沒有考慮到沒有學生存在的情況。
解決方案:在最後運算前補充一個選擇結構,只有學生數大於0時才會有結果輸出。
4.本題PTA提交列表
我的git地址:https://git.coding.net/dx200798/seventh.git
項目
個人總結
本周學習內容:
本周簡單學習了數組,練習運用了三種迴圈語句。
疑點痛點:
對迴圈語句的互相嵌套的應用還不夠熟練。
互評和學習進度
互評連結
連結一:
連結二:
連結三:
圖表
C語言——第七周作業