4344번: 평균은 넘겠지


#include <stdio.h>
int main()
{
int t = 0;
int s = 0;
scanf("%d", &t);
for (int i = 0; i < t ; i++)
{
int score[1000] = {};
double average = 0;
int sum = 0;
scanf("%d", &s);
for (int j = 0; j < s; j++)
{
scanf("%d", &score[j]);
sum += score[j];
}
average = (double)sum/s;
int people = 0;
double result = 0;
for(int j = 0; j < s ; j++)
{
if(average < (double)score[j])
{
people++;
}
}
result = (double)people/s * 100;
printf("%.3f%%\n", result);
}
}
메모리 (KB) | 시간 (ms) | 코드 길이 (B) |
1112 | 0 | 545 |
이 문제는 평균 점수를 구하는게 아닌, 학생들 중 평균 점수를 넘은 사람들의 비율을 구하는 문제이다. 이 역시 for문 안에 어떤 내용을 넣을지 생각하는게 중요하다.
먼저 이중 for문 중 첫번째 for문에서는 평균 점수를 구했고, 두번째 for문에서는 배열을 다시 돌며 평균 점수를 넘은 사람들의 수를 구했다.
🙋 더 알아보기
소수점 자리 출력 정하기
%를 출력하기

이전에 입출력 문제들처럼 \
는 이스케이프 문자를 나타내기 때문에 \
하나만을 출력할 수 없다. 그래서 \\
를 써주어 \
를 출력해주었다. 그와 같이 %
는 서식 문자를 나타낸다. 그러므로 %
를 사용할 때도 %%
로 작성하여 %
를 출력해주어야 한다. 그래도 출력은 되네…
Uploaded by N2T