문제 설명
XX 학교에서는 다음과 같이 학생들의 점수에 따라 학점을 부여합니다.
- 85점 ~ 100점 : A 학점
- 70점 ~ 84점 : B 학점
- 55점 ~ 69점 : C 학점
- 40점 ~ 54점 : D 학점
- 0점 ~ 39점 : F 학점
학생들의 점수가 들어있는 배열 scores와 scores의 길이 scores_len이 매개변수로 주어질 때, A 학점, B 학점, C 학점, D 학점, F 학점을 받은 학생들의 수를 배열에 순서대로 담아 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요.
매개변수 설명
학생들의 점수가 들어있는 배열 scores와 scores의 길이 scores_len이 solution 함수의 매개변수로 주어집니다.
- scores의 길이 scores_len은 1 이상 200 이하의 자연수입니다.
- 학생들의 점수는 0 점 이상 100점 이하의 정수입니다.
return 값 설명
solution 함수는 {A 학점 학생 수, B 학점 학생 수, C 학점 학생 수, D 학점 학생 수, F 학점 학생 수} 를 순서대로 배열에 담아 return 합니다.
예시
scores | scores_len | return |
---|---|---|
{86, 72, 98, 60, 45} | 5 | {2,1,1,1,0} |
예시 설명
예시 #1
주어진 학생들의 점수는 다음과 같이 학점을 받습니다.
- A 학점 : {86점, 98점} 2명
- B 학점 : {72점} 1명
- C 학점 : {60점} 1명
- D 학점 : {45점} 1명
- F 학점 : 0 명
따라서 {2, 1, 1, 1, 0} 을 return 하면 됩니다.
빈칸 채우기 문제 안내
- 빈칸 채우기는 이미 완성된 코드 중 빈칸에 알맞은 코드를 입력하는 문제 타입입니다.
- 빈칸을 제외한 기본 코드는 수정할 수 없습니다.
- 빈칸을 채우지 않을 경우, 실행 결과에 에러 메시지가 표시됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int* solution(int scores[], int scores_len) {
int* grade_counter = (int*)malloc(sizeof(int)*5);
for(int i = 0; i < 5; ++i)
grade_counter[i] = 0;
for(int i = 0; i < scores_len; ++i)
{
if()
grade_counter[0] += 1;
else if()
grade_counter[1] += 1;
else if()
grade_counter[2] += 1;
else if()
grade_counter[3] += 1;
else
grade_counter[4] += 1;
}
return grade_counter;
}
실행 결과
실행 중지
실행 결과가 여기에 표시됩니다.