문제 설명
다음과 같은 조건을 만족하는 성적처리 함수를 설계하라
함수명은 임의로 정하고 parameter는 int이고 return은 char로 지정한다
성적 기준은 다음과 같다
100~91 => A, 90~81 => B, 80~71 => C, 70~61 => D, 60이하 => F
성적을 입력하면 학점을 리턴 한다 (문자 A,B,C,D,F 중 하나)
단, 입력된 값이 0 ~ 100을 벗어나면 문자 ‘X’를 리턴 한다
#include <stdio.h>
char func(int score)
{
// 코드 작성
}
void main(void)
{
int score;
scanf("%d", &score);
printf("%c\n", func(score));
}
입력 예시
90
출력 예시
B
정답 코드
#include <stdio.h>
/*
char func(int s)
{
if ((s < 0) || (s > 100))
{
return 'X';
}
switch ((s - 1) / 10)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5: return 'F';
case 6: return 'D';
case 7: return 'C';
case 8: return 'B';
case 9:
case 10: return 'A';
}
}
*/
char func(int s)
{
char * r = "FFFFFFDCBAA";
if ((s < 0) || (s > 100))
{
return 'X';
}
return r[(s -1) / 10];
}
void main(void)
{
int score;
scanf("%d", &score);
printf("%c\n", func(score));
}
메모
printf 내부의 \n 습관화 필요