문제

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;
}