main() { int i,j; scanf("%2d%* %d",&i,&j); printf("%d %d\n",i,j); return 0; }
위와같은 소스에서요 1234 1234 를 입력해서 12 1234 를 출력하려고하는데 왜 잘안될까요? :ㅇ
%* --> %*d 였군요 ㅋ 감사합니다.
printf("%d %d\n", i/100, j);
이렇게 하시면?ㅋㅋ
농담입니다.ㅎㅎ
http://nicesj.com
https://nicesj.comhttps://blog.nicesj.com
scanf에서 숫자를 읽을 때 %2d와 같은 형식이 불가능한 걸로 알고 있는데... 문자열을 읽어서 그중 앞부분만을 변환하면 될 것 같은데요?
근데 돼는것같지 않아요?
1234 1234 입력하면
12 34 이렇게 출력되더라구요.
%2d의 형식으로도 입력이 되는군요.. 코드르 바꿔보세요.. 정상적으로 출력이 되네요..
scanf("%2d%*d %d",&i,&j);
이 소스 제가한거랑 같은거죠?
올리신 코드에는 * 다음에 d가 빠져있는데요..
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
ㅋㅋㅋ
printf("%d %d\n", i/100, j);
이렇게 하시면?ㅋㅋ
농담입니다.ㅎㅎ
http://nicesj.com
https://nicesj.com
https://blog.nicesj.com
문자열로 변환을...
scanf에서 숫자를 읽을 때 %2d와 같은 형식이 불가능한 걸로 알고 있는데...
문자열을 읽어서 그중 앞부분만을 변환하면 될 것 같은데요?
근데 돼는것같지
근데 돼는것같지 않아요?
1234 1234 입력하면
12 34
이렇게 출력되더라구요.
제가 잘못 알았었네요..
%2d의 형식으로도 입력이 되는군요..
코드르 바꿔보세요..
정상적으로 출력이 되네요..
이 소스 제가한거랑
이 소스 제가한거랑 같은거죠?
올리신 코드에는 * 다음에 d가 빠져있는데요..
올리신 코드에는 * 다음에 d가 빠져있는데요..
댓글 달기