닫기버튼


상단 배너 영역


실시간댓글

[일반] 프로그래밍 질문좀 받아주십쇼

비쿠년 | 2014-09-26 11:58

 

#include<stdio.h>

int main(void)
{
 char eng;

 printf("소문자를 입력하시오(실행 종료는 Q:");
 scanf("%c",&eng);

while(eng)

 if (eng=='Q')
    break;
 else if(eng>'a' || eng<'z')
    printf("%c\n",eng-32);
     
 
 puts("실행 종료합니다.");
 

 return 0;
}

 

소문자->대문자 변환 프로그래밍인데

 

소문자를 치면 대문자가 한도끝도없이 미친듯이 나옴

 

fflush(stdin); <-이코드를 넣으라는데 이코드를 어디다넣는건가요 -- 

 

nlv0
gold

0

point

0

프로필 숨기기

0

0%

최신순

게임조선 회원님들의 의견 (총 10개) ※ 새로고침은 5초에 한번씩 실행 됩니다.

새로고침

신고

nlv200_0100 월현콩 2014-09-26 12:14 0

이문제는 fflush의 문제가 아닌것 같은데..

fflush는 니가 입력받은 버퍼를 지워주는건데 이미 eng에 값을 할당하고나서 while문이 계속 도는동안

조건인 eng가 변화하는 코드가 없음.. 애초에 while문을 어떤의도에서 넣었는지도 모르겠고..

while문을 벗어나는 부분도 없고..

한번만 받고 끝낼꺼면 while문을 없애고 while문넣고 q를 누를때까지 계속 입력받는걸 원하면

저기 if문이 끝나고 fflush(stdin);를 하고 다시 scanf로 입력을 받으면됨

신고

nlv200_0100 월현콩 2014-09-26 12:15 0

while(eng)
{
if (eng=='Q')
break;
else if(eng>'a' || eng<'z')
printf("%c\n",eng-32);
fflush(stdin);
scanf("%c",&eng);
}

신고

댓글 삭제

지나가는C++초보 작성자 2014-09-26 12:16 0

C++을 잘 모르지만 fflush함수는 버퍼를 비우는 함수로 알고 있는데 잘은 모르겠고요 쓰임새는 검색을 해보시길 바랍니다 그리고 괄호가 제대로 안쳐져 있어서 모르겠는데 끝나는 조건이 애매하네요 그리고 저 조건문에서 a to z라는건 아스키코드를 불러오는거 같은데 제가 몰라서 그러는데 저렇게 써도 되나요?

신고

nlv8 평온의빛 2014-09-26 12:18 0

while 문에 중괄호 없는게 막 현기증이 난다 ㅋ

신고

댓글 삭제

c더초보인비쿠녀ㅓㄴ 작성자 2014-09-26 12:19 0

그걸 저한테 물어보시면 제가 어떻게 대답을합니까..

신고

댓글 삭제

지나가는C++초보 작성자 2014-09-26 12:21 0

다시보니 C++이 아니라 C네요

신고

댓글 삭제

ㅂㅋㄴ 작성자 2014-09-26 12:23 0

흐아아 주말에 책읽고 공부해야지

존나 맨땅에 헤딩하는기분

신고

nlv7 [우유조아] 2014-09-26 14:45 0

자바하세요

신고

nlv7 [우유조아] 2014-09-26 14:46 0

저도 재현되는 문제 하고 싶어요

신고

nlv7 [우유조아] 2014-09-26 14:46 0

오늘도 하루종일 상상방어코딩

0/500자

목록 글쓰기 위로 로그인


게임조선 소개및 약관