playXP

서브 메뉴

Page. 1 / 12504 [내 메뉴에 추가]
글쓰기
작성자 아이콘 CvTale
작성일 2011-10-11 18:12:12 KST 조회 172
제목
C언어 질문
# include <stdio.h>
//목적 : 3개의 점수를 받아서 평균을 내고 그것에 따른 학점을 출력//
int main()
{
int kor, eng, mat ;
double ave ;

printf("국어 점수를 입력하세요 : ");
scanf("%d", &kor);

printf("수학 점수를 입력하세요 : ");
scanf("%d", &mat);

printf("영어 점수를 입력하세요 : ");
scanf("%d", &eng);
//여기까지 문제없음//
ave = (double)(kor + eng + mat)/3 ;
printf("평균 점수는 %f\n 이고\n" , ave);
//이거 실수값으로 처리되는지 의문//

if(ave >= 90)
{
printf("당신의 학점은 A입니다. 훌륭합니다^^\n");
}
else if( 80 =< ave < 90)
{
printf("당신의 학점은 B입니다. 조금 아깝네요\n");
}
else if( 70 =< ave < 80)
{
printf("당신의 학점은 C입니다. 수업시간에 졸았나요?\n");
}
else if( 60 =< ave < 70)
{
printf("당신의 학점은 D입니다. 공부하세요^^\n");
}
else
{
printf("당신의 학점은 F입니다. 재수강하세요!\n");
}
//그리고 여기 else문이 전부 오류뜨는데 오류이유도 안뜸//
}

//뭐가 잘못된거..?//

지속적인 허위 신고시 신고자가 제재를 받을 수 있습니다.
신고 사유를 입력하십시오:

발도장 찍기
아이콘 NightFury (2011-10-11 18:14:04 KST)
0↑ ↓0
센스 이미지
80 =< ave < 90

요것들때문 아닌가
아이콘 CvTale (2011-10-11 18:14:40 KST)
0↑ ↓0
센스 이미지
아마 그럴가능성이 높은듯한데 이걸 어떻게 처리할지 고민중
아이콘 홀있 (2011-10-11 18:15:40 KST)
0↑ ↓0
센스 이미지
ave = (double)(kor + eng + mat)/3 ;
printf("평균 점수는 %f\n 이고\n" , ave);
double형으로 형변환 했기 때문에 실수값이죠

elseif(ave<90)이런식으로 하시면되요
elseif가 if문이 아닐경우 elseif가 사용되기 때문이죠
아이콘 CvTale (2011-10-11 18:18:19 KST)
0↑ ↓0
센스 이미지
음 그러면 아래로 내려오면서 조건을 덮어나가는 건가요..?
아이콘 홀있 (2011-10-11 18:19:36 KST)
0↑ ↓0
센스 이미지
그런셈이죠
아이콘 CvTale (2011-10-11 18:21:16 KST)
0↑ ↓0
센스 이미지
아항 그렇게하니까 해결되네요 감사합니당
아이콘 홀있 (2011-10-11 18:24:10 KST)
0↑ ↓0
센스 이미지
if문에서 90이상이므로
첫번째 elseif에선 선언을 하지 않더라도 90미만이라는 조건이 생성되어있습니다
즉 80이상 90미만이 선언되는거죠
아이콘 CvTale (2011-10-11 18:25:03 KST)
0↑ ↓0
센스 이미지
그렇군요 이미 첫조건을 만족하지 않으면 not명령과 같으니..
댓글을 등록하려면 로그인 하셔야 합니다. 로그인 하시려면 [여기]를 클릭하십시오.
롤토체스 TFT - 롤체지지 LoLCHESS.GG
소환사의 협곡부터 칼바람, 우르프까지 - 포로지지 PORO.GG
배그 전적검색은 닥지지(DAK.GG)에서 가능합니다
  • (주)플레이엑스피
  • 대표: 윤석재
  • 사업자등록번호: 406-86-00726

© PlayXP Inc. All Rights Reserved.