1. 과제 ¶
- 다음 소스의 결과값을 예상하라
#include<stdio.h> int main() { int a=1,b=2,c=3,d=4,e=5; printf("%d\n",(++a)+(b++)*(c+d)%e); return 0; }
- 다음 bitwise operation을 수행하라
- 0110 0101 ^ 1001 1010
- 1010 1101 & 1010 1010
- 1010 1111 | 1010 1001
- 0110 0101 ^ 1001 1010
- 우와, 쉽다
2.1.1. 가르친 내용(fact) ¶
- redirection: input: <, output: >
- assignment operator: == 이놈과 비슷하니까 조심하세요
- arithmetic operator(이거 모르면 초등학교로 돌아가세요)
- increment/decrement, postfix/prefix: 이거 모르면 곧바로 질문합니다. 저 자는데 깨워도 되요(물론
안못 받겠지만)
- shorthand operator (arithmetic operator + assignment operator)
- operator precedence/associativity
- bitwise operator
2.2.1. 배운 내용(fact) ¶
operator(연산자)에 대해 배웠습니다.
-expression과 statements의차이
-assignment operater (=)이 같다는 의미가 아니라는것.
-increment operator ++i는 expression이 실행되기 전, i++는 후에 1을더해준다
-decrement operator는 위와 동일하지만 1씩 빼준다
-operator precedence(우선순위) << 이건 초등학교때 배운거.
추가된 내용은 %(모듈러스?)는 *,/와 우선순위가 같다정도?
-bitwise도 배웠는데 다시 하려니까 잘모르겠네요 ㅜㅜ
-expression과 statements의차이
-assignment operater (=)이 같다는 의미가 아니라는것.
-increment operator ++i는 expression이 실행되기 전, i++는 후에 1을더해준다
-decrement operator는 위와 동일하지만 1씩 빼준다
-operator precedence(우선순위) << 이건 초등학교때 배운거.
추가된 내용은 %(모듈러스?)는 *,/와 우선순위가 같다정도?
-bitwise도 배웠는데 다시 하려니까 잘모르겠네요 ㅜㅜ
2.2.2. 자기 반성 및 고칠 점(feeling/finds) ¶
새싹교실하면서 이렇게 복습 열심히 한건 처음인 것 같습니다..
앞으로는 더 열심히하겠습니다 ~
그리고 새싹 선생님 열정적으로 가르쳐주셔서 감사해요 ㅋㅋㅋ
앞으로는 더 열심히하겠습니다 ~
그리고 새싹 선생님 열정적으로 가르쳐주셔서 감사해요 ㅋㅋㅋ
2.2.3. 과제 정답 ¶
- 다음 소스의 결과값을 예상하라
#include<stdio.h> int main() { int a=1,b=2,c=3,d=4,e=5; printf("%d\n",(++a)+(b++)*(c+d)%e); return 0; }
2+2*7%5
2+4=6
- 다음 bitwise operation을 수행하라
- 0110 0101 ^ 1001 1010
- 1010 1101 & 1010 1010
- 1010 1111 | 1010 1001
- 0110 0101 ^ 1001 1010
2. 1010 1000
3. 1010 1111
2.3.1. 배운 내용(fact) ¶
i++와 ++i는 단독으로 쓰일때 동일하지만
다른 것과 같이 쓰일때 (?) i++는 식의 실행이 끝난 후 나중에 1을 더해주는것
++i는 전에 1을 더해주고 실행하는것.
%는 나누고 나머지.
/
+
-
*
등이 있다. (연산)
다른 것과 같이 쓰일때 (?) i++는 식의 실행이 끝난 후 나중에 1을 더해주는것
++i는 전에 1을 더해주고 실행하는것.
%는 나누고 나머지.
/
+
-
*
등이 있다. (연산)
a=b 는 b대신 a로 표현 (?)... 그 비슷한 뜻.
같다를 표현하고 싶다면 == 을 쓸것.
같다를 표현하고 싶다면 == 을 쓸것.
2.3.3. 과제 정답 ¶
- 다음 소스의 결과값을 예상하라
#include<stdio.h> int main() { int a=1,b=2,c=3,d=4,e=5; printf("%d\n",(++a)+(b++)*(c+d)%e); return 0; }
=> 정답 : 2+2*7%5 은 2+4 이므로 아마도 6..
- 다음 bitwise operation을 수행하라
- 0110 0101 ^ 1001 1010
- 1010 1101 & 1010 1010
- 1010 1111 | 1010 1001
- 0110 0101 ^ 1001 1010