1. 程式人生 > >C語言學習記錄(4)

C語言學習記錄(4)

C語言學習記錄

學校的OJ上的題

青年歌手大獎賽_評委會打分

題目描述 青年歌手大獎賽中,評委會給參賽選手打分。選手得分規則為去掉一個最高分和一個最低分,然後計算平均得分,請程式設計輸出某選手的得分。 輸入描述 輸入資料有多組,每組佔一行,每行的第一個數是n(2<n<=100),表示評委的人數,然後是n個評委的打分。 輸出描述 對於每組輸入資料,輸出選手的得分,結果保留2位小數,每組輸出佔一行。 輸入樣例 3 99 98 97 4 100 99 98 97 輸出樣例 98.00 98.50

解題:

#include <stdio.h>

int main(int argc, char **
argv) { int n,i=0; double num[100]; int c=0; double m,a=0,b=204748364; double sum=0.0; while(~scanf("%d",&n)) { if(n>2&&n<=100) { while(c<n) { scanf("%lf",&m); num[c]=m; c++
; } for(c=0;c<n;c++) { if(a<num[c]) { a=num[c]; } while(b>num[c]) { b=num[c]; }
} c=0; do{ sum=sum+num[c]; c++; }while(c<n); printf("%.2lf\n",1.0*(sum-a-b)/(n-2)); sum=0; c=0; a=0; b=204748364; } } return 0; }

注意:

  1. 最後各個變數要重置。