문제
https://www.acmicpc.net/problem/4344
설명
각 케이스별로 평균을 넘는 점수를 가진 사람이 몇 % 인지 구하는 문제이므로 일단 for문으로 여러개의 케이스를 받을 수 있도록 하고 중첩으로 for문을 넣어 점수를 입력받는 동시에 score배열에 저장하고 total변수에 더하여 평균을 구할 수 있도록 하고 다시한번 for문 을 이용하여 평균을 넘는 사람이 몇명인지 센 다음 최종적으로 몇 퍼센트의 사람이 평균을 넘는지 출력하도록 하였다.
코드
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
int k,total=0,avg = 0,score[1001], exceed_hito = 0;
scanf("%d",&k);
for (int j = 0; j < k; j++)
{
int temp;
scanf("%d", &temp);
total += temp;
score[j] = temp;
}
avg = total / k;
for (int j = 0; j < k; j++)
exceed_hito += score[j] > avg ? 1 : 0;
printf("%.3f%%\n", (exceed_hito*1.0) / (k*1.0)*100);
}
return 0;
}