yhoon3002   4년 전

컴파일했는데, 아무것도 프린트가 안되요.

제가 하고싶은건 맨끝자리수를 비교해서 더 큰걸 for문을 써서 역순으로 출력하고싶은데, 안되네요...

wjddydgns99   4년 전

문자열과 int형 어떻게 입력받는지, 둘의 차이를 이해 못하신 것 같습니다. 

int main()
{
 int num1[3] = { 0, };
 scanf("%d", &num1);
 printf("%d", num1[0]);
}

이 코드를 실행해보세요.
입력 : 123

출력 : 123

즉, num[0]에 123이 들어가게됩니다.

먼저 입력이 잘 되었는지 확인하고 그 다음에 풀어보시면 좋을 것 같아요

yhoon3002   4년 전

int main()
{
 int num1[3] = { 0, };
 scanf("%d", &num1);
 printf("%d", num1[0]);
}

이 코드를 보고 잘못된점은 찾았습니다.

그런데, 제가 하려는 방법으로 입력을 받으려면 어떻게 해야되는지 감이 전혀 안잡힙니다.

for문을 쓰자하니, 숫자 하나하나씩 7 9 4 이렇게 입력해야될거같고...

wjddydgns99   4년 전

제 생각엔 이 문제는, 푸는 방법보다 입력 받는 것이 더 어렵습니다. 입력 어떻게 받는지 알려주면 금방 해결하실 겁니다. 좀만 더 생각해보는게 나을 것 같습니다. 힌트 좀 드리자면, 꼭 정수로 입력받을 필요 없습니다.

jhs061116   4년 전

제 생각에는 굳이 문자로 받을 필요 없습니다. 입력하실때 %d 안에 1만 넣어주시면 하나씩만 입력이 됩니다. 

요렇게 말이죠 ☞ "%1d",

이렇게 하면 붙여써도 입력이 될것입니다.(단, for문을 이용하셔야 할것 같습니다.)

댓글을 작성하려면 로그인해야 합니다.