SDUT 1081 Above Average

题目描述

It is said that 90% of frosh expect to be above average in their class. You are to provide a reality check.

输入

The first line of standard input contains an integer C, the number of test cases. C data sets follow. Each data set begins with an integer, N, the number of people in the class (1 <= N <= 1000). N integers follow, separated by spaces or newlines, each giving the final grade (an integer between 0 and 100) of a student in the class.

输出

For each case you are to output a line giving the percentage of students whose grade is above average, rounded to 3 decimal places.

示例输入

5
5 50 50 70 80 100
7 100 95 90 80 70 60 50
3 70 90 80
3 70 90 81
9 100 99 98 97 96 95 94 93 91

示例输出

40.000%
57.143%
33.333%
66.667%
55.556%

  1. #include <stdio.h>  
  2. int main()  
  3. {  
  4.     int b,n,i,j,temp,k;  
  5.     float sum,q;  
  6.     int a[1001];  
  7.     scanf("%d",&b);  
  8.     for(k=1;k<=b;k++)  
  9.         {  
  10.             sum=0;  
  11.             q=0;  
  12.             temp=0;  
  13.             scanf("%d",&n);  
  14.             for(i=1;i<=n;i++)  
  15.                 {  
  16.                     scanf("%d",&a[i]);  
  17.                     sum+=a[i];  
  18.                     }  
  19.                     q=sum/n;  
  20.                     for(i=1;i<=n;i++)  
  21.                 {  
  22.                     if(a[i]>q)  
  23.                     temp++;  
  24.                 }  
  25.             printf("%.3f%c\n",(float)temp/(float)n*100,'%');  
  26.             }  
  27.  return 0;  
  28. }   

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值