uva - 10370-Above Average 解题报告

原题链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1311

原题大意:第一列输入一个整数代表有几组测试数据,每组数据的第一个整数代表全班人数,接下去输入每人的期末总成绩,算出有多少百分比的学生成绩高于全班平均成绩,输出是保留小数点后三位。

一开始定义了a[100]来表示全班人数,结果RE了= =仔细一看班级总人数是1 - 1000,改成a[1000]就好了。

这几天做的题都挺水的,爽死了哈哈~~可是可是!尼玛忘了保存代码结果前面做的几道题都得重写一遍T T

 1 #include<stdio.h>
 2 int main(){
 3     int n,i,f,s,t,a[1001];
 4     float p;
 5     scanf("%d",&n);
 6     while(n--){
 7     scanf("%d",&f);
 8     s=0;
 9     for(i=0;i<f;i++){
10     scanf("%d",&a[i]);
11     s=s+a[i];}   //累计全班总分//
12     s=s/f;           //求出全班平均分//
13     t=0;
14     for(i=0;i<f;i++)
15     if(a[i]>s) ++t;    //t表示全班高于平均分的人数//
16     p=100.0*t/f;  
17     printf("%.3f%%\n",p);}
18 }

 

posted @ 2013-02-12 09:02  sev_en  阅读(164)  评论(0编辑  收藏  举报