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 }