2022.05.01
문제
시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.입력
첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다.출력
시험 성적을 출력한다.예제 입력 1
100
예제 출력 1
A
1.계속 컴파일에러가 났다. c99로 진행할때는 scanf_s가 아니라 scanf로 진행해야 컴파일에러가 나지 않는다.
2.프로그램을 돌려보면 정상적으로 출력되는데 문제에 제출하면 계속 틀렸다고 나와서 결국 다른분의 정답을 참고했다.
#include<stdio.h>
int main()
{
int a;
scanf("%d", &a);
if(90 <= a && a <= 100){
printf("A");
}
if(80 <= a && a <= 89){
printf("B");
}
if(70 <= a && a <= 79){
printf("C");
}
if(60 <= a && a <= 69){
printf("D");
}
if(a > 100 || a < 60){
printf("F");
}
return 0;
}
출처 https://blog.naver.com/hy00z133/222184569717
#include <stdio.h>
int main()
{
int num;
printf("시험점수를 입력하시오");
scanf("%d", &num);
if ((0 <= num) && (num <= 100))
{
if (num >= 90)
printf("A");
else if (num >= 80)
printf("B");
else if (num >= 70)
printf("C");
else if (num >= 60)
printf("D");
else
printf("F");
}
return 0;
}
1번은 이건 이렇게 해도 되고 저렇게 해도 맞다. 중요한건 2번...! 문제의 출력 디테일을 생각 해야한다. 그러니까
예제 입력 1
100
예제 출력 1
A
1)이렇게 출력하라고 명령했으니 무조건 이렇게 출력해야 한다.
2)비주얼 스튜디오만 컴파일러에서 scanf_s를 지원하지 않기 때문에 scanf를 써야하고 위에서 말한 디테일 문제 때문에 내가쓴 printf("시험점수를 입력하시오"); 를 지워야한다!
#include <stdio.h>
int main()
{
int num;
scanf("%d", &num);
if ((0 <= num) && (num <= 100))
{
if (num >= 90)
printf("A");
else if (num >= 80)
printf("B");
else if (num >= 70)
printf("C");
else if (num >= 60)
printf("D");
else
printf("F");
}
return 0;
}
a=int(input())
if (0<=a<=100):
if a>=90:
print('A')
elif a>=80:
print('B')
elif a>=70:
print('C')
elif a>=60 :
print('D')
else:
print('F')
파이썬은 중첩문을 쓸때 괄호를 쓰지않고 들여쓰기하면 된다.