되는대로 살자

[C언어 기출문제&풀이] 학점 본문

2009~2014/C/C++

[C언어 기출문제&풀이] 학점

malu 2010. 11. 2. 16:44
프로그램 명: sc
제한시간: 1 초
점수를 입력으로 받아 각 점수별 학점분포 수를 구하는 문제이다.

각 점수별 학점은 다음과 같다.

  • A : 100 - 90
  • B : 80 - 89
  • C : 70 - 79
  • D : 60 - 69
  • F : 그 외

입력

1 에서 100 사이 정수가 입력으로 주어진다. 입력된 점수는 100 개를 넘지 않는다. -1 은 입력의 끝이다.

출력

  • 첫 수는 입력된 점수의 갯수이고
  • 다음 줄 부터 차례대로 A , B , C, D ,F 학점의 수를 출력한다.

입출력 예

입력

100 90 60 58 -1

출력

4
2
0
0
1
1

출력 예 보충

4 는 입력된 점수의 갯수이고 , A 학점이 2 명 , B,C 학점은 없고 D 학점이 1 명 , F 학점이 1 명.


풀이 : 입력은 루프를 돌다 입력값이 -1일때 멈추도록 한다. 값의 정리는 조건문을 통하여 한다.
#include <stdio.h>
02   
03 int main()
04 {
05     int i,ar[100],a=0,b=0,c=0,d=0,f=0,p=0;
06     for(i=0;i<100;i++)
07     {
08         scanf("%d",&ar[i]);
09         if(ar[i]==-1)
10             break; p++;
11     }
12     for(i=0;i<=p-1;i++)
13     {
14         if(ar[i]>=90&&ar[i]<=100)
15             a++;
16         else if(ar[i]>=80&&ar[i]<=89)
17             b++;
18         else if(ar[i]>=70&&ar[i]<=79)
19             c++;
20         else if(ar[i]>=60&&ar[i]<=69)
21             d++;
22         else 
23             f++;
24     }
25     printf("%d\n",p);
26     printf("%d\n",a);
27     printf("%d\n",b);
28     printf("%d\n",c);
29     printf("%d\n",d);
30     printf("%d\n",f);
31 }