책 내용 질문하기
질문입니다.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
55
조회수
104
작성일
2017-06-14
작성자
탈퇴*원
첨부파일

안녕하세요~

1권 질문입니다.

1. p55 해설을 보면 문자에서 %-10s는 korea_____ , %10s는 _____korea 이고 숫자에서 &8.2f는 __125.23 이었는데요.

문자에서 (-)는 왼쪽, (+)는 오른쪽인 걸 알 수 있었는데,

p83 기출따라잡기 문제1번은 &8.3s이고 답이 korea___에서 앞 세자리를 뽑은 kor이라고 되어 있는데

문자에서 (+)니까 오른쪽에서 세자리를 읽어와야 하는 것 아닌가요? 왜 왼쪽부터 읽나요?

2. p93쪽에서 for(i=0; i<5; i++)라고 되어 있는데 실행 순서나 값에서 for(i=0; i<5; ++i)랑 차이가 있나요? 어떤 문제는 i++이고 또 어떤 문제는 ++i로 나오던데 실행순서가 같은 것 같아서요.

3. p104 문제8에서 123456789.0e-5f를 %f의 형태로 고칠 때 답이 1234.567871인데 만약에 시험에 나온다면 소수점이하 6자리라는 건 알겠는데, 그 뒤에 왜 9가 71이 되나요?

4. p478해설에서는 연산을 뒷 부분부터 차례대로 한다고 되어 있는데, 왜 우선순위로 안하나요?

p61에서 연산자 우선순위의 설명은 같은 대입연산자이면 >>=, <<=, %=, /=, *=, -=, +=, = 이 순서로 계산하라는 뜻이 아니였나요?

답변
2017-06-14 10:05:36

안녕하세요.

1)

문자열을 지정하는 서식 연산자인 %s에 부호가 붙는 경우는 가져오는 값의 위치가 아니라 출력할 방향을 지정합니다.

%-8.3s 라고 지정하면 출력될 자리를 8자리 확보한 후 대응되는 변수에서 소수점 자릿수(3)만큼 가져와 왼쪽(-)부터 출력한다는 의미입니다.

%8.3s 라고 지정하면 출력될 자리를 8자리 확보한 후 대응되는 변수에서 소수점 자릿수(3)만큼 가져와 오른쪽(+)부터 출력한다는 의미입니다.

즉 %s에서의 부호는 대응되는 변수에서 가져올 값의 위치를 지정하는 것이 아니라 출력되는 출력 방향을 지정하는 것입니다.

2)

반복문에서 증가값으로 사용되는 경우 ++i와 i++은 차이가 없이 동일하게 1씩 증가하는 기능을 수행합니다.

증감 연산자가 단독으로 사용될 때는 후치나 전치나 동일합니다.

다른 수식에 포함되어 사용될 때만 그 기능을 발휘하는 것이죠.

3)

실수를 지수로 표현하는 정규화 과정에서의 차이로 발생하는 것인데, 이러한 차이까지 파악하라는 것은 정보처리 시험과 맞지 않습니다. 이 문제는 자리수 확인을 위해 담아두은 것으로 실제 문제로 출제되지는 않을 것입니다. 그러니 자리수 파악의 용도로만 확인하고 넘어가세요.

4)

a += b 는 a = a + b 의 개념입니다.

뒤의 b에 해당하는 것이 또다른 c += d 인 것으로 뒤의 과정이 우선 수행되어 그 결과가 앞쪽에 적용되는 것이므로

뒤에서부터 계산이 수행되는 것이죠.

굳이 구분해서 적어보자면

myVar.a += ( myVar.b -= ( myVar.c *= 10 ) )

위와 같이 구조라고 생각하시면 됩니다.

오늘도 즐거운 하루 되세요.

  • *
    2017-06-14 10:05:36

    안녕하세요.

    1)

    문자열을 지정하는 서식 연산자인 %s에 부호가 붙는 경우는 가져오는 값의 위치가 아니라 출력할 방향을 지정합니다.

    %-8.3s 라고 지정하면 출력될 자리를 8자리 확보한 후 대응되는 변수에서 소수점 자릿수(3)만큼 가져와 왼쪽(-)부터 출력한다는 의미입니다.

    %8.3s 라고 지정하면 출력될 자리를 8자리 확보한 후 대응되는 변수에서 소수점 자릿수(3)만큼 가져와 오른쪽(+)부터 출력한다는 의미입니다.

    즉 %s에서의 부호는 대응되는 변수에서 가져올 값의 위치를 지정하는 것이 아니라 출력되는 출력 방향을 지정하는 것입니다.

    2)

    반복문에서 증가값으로 사용되는 경우 ++i와 i++은 차이가 없이 동일하게 1씩 증가하는 기능을 수행합니다.

    증감 연산자가 단독으로 사용될 때는 후치나 전치나 동일합니다.

    다른 수식에 포함되어 사용될 때만 그 기능을 발휘하는 것이죠.

    3)

    실수를 지수로 표현하는 정규화 과정에서의 차이로 발생하는 것인데, 이러한 차이까지 파악하라는 것은 정보처리 시험과 맞지 않습니다. 이 문제는 자리수 확인을 위해 담아두은 것으로 실제 문제로 출제되지는 않을 것입니다. 그러니 자리수 파악의 용도로만 확인하고 넘어가세요.

    4)

    a += b 는 a = a + b 의 개념입니다.

    뒤의 b에 해당하는 것이 또다른 c += d 인 것으로 뒤의 과정이 우선 수행되어 그 결과가 앞쪽에 적용되는 것이므로

    뒤에서부터 계산이 수행되는 것이죠.

    굳이 구분해서 적어보자면

    myVar.a += ( myVar.b -= ( myVar.c *= 10 ) )

    위와 같이 구조라고 생각하시면 됩니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.