int main()
{
int kor;
int eng;
int mat;
int sci;
int sum;
//printf("국어 영어 수학 과학 순으로 점수를 입력해주세요!! \n");
scanf("%d %d %d %d", &kor, &eng, &mat, &sci);
sum = (kor + eng + mat + sci) / 4;
//printf("평균값 : %d\n", sum);
if ((kor >= 0 && kor <= 100) && (eng >= 0 && eng <= 100) && (mat >= 0 && mat <= 100) && (sci >= 0 && sci <= 100))
{
if (sum >= 85)
{
printf("합격 입니다.\n");
}
else
{
printf("불합격 입니다.\n");
}
}
else
{
printf("잘못된 점수 입력입니다.\n");
}
return 0;
}
주석 부분은 제가 비쥬얼 스튜디오에서 작업하면서 확인하기 위해 추가했던거구 심사문제 답안 작성시에는 주석처리 했습니다.
그런데 결과를 보니까 if 조건문에 &&(AND)연산자 가 아닌 ||(OR)연산자를 사용하라 하더라구요 그런데 저 모든 조건중 하나라도 거짓이면 잘못된 점수 입력이 되어야 하니까 AND연산이 맞는게 아닌가요?? OR 연산 수행하면 예를들어 국어점수는 0~100범위 내에 있더라도 수학점수가 100이상이거나 0미만이면 참으로 되서 if문을 수행하게 되는게 아닌가요
visual studio로 저 코드 컴파일 했을때는 정상적으로 작동이 되더라구요
조건을 작성하는 방법이 하나만 있는 것은 아닙니다.
18.9에서도 같은 문의가 있었습니다.
&&로 작성할 수도 있고, ||로 작성할 수도 있습니다.
이전 질문을 참고해주세요.
https://dojang.io/mod/forum/discuss.php?d=38&parent=104
감사합니다.
printf 잘못되었습나다....
printf로 "합격 입니다"가 아니라 "합격"을 출력해야 되는거 아닌가요 ??