U E D R , A S I H C RSS

새싹교실/2011/學高/5회차



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

  • 우와, 쉽다

1.1. 정답


1. 6

2. 1111 1111
1010 1000
1010 1111

2. 2011년 4월 4일 다섯째 시간

2.1. 선생님: 윤종하

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.1.2. 자기 반성 및 수정할 점(feeling/finds)

  • 진도 계획을 잘못 세웠습니다. 다음부터는 작작 나가야겠습니다.


2.2. 학생: 김세영

2.2.1. 배운 내용(fact)

operator(연산자)에 대해 배웠습니다.
-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

1. 1111 1111
2. 1010 1000
3. 1010 1111

2.3. 학생: 김지연



2.3.1. 배운 내용(fact)

i++와 ++i는 단독으로 쓰일때 동일하지만
다른 것과 같이 쓰일때 (?) i++는 식의 실행이 끝난 후 나중에 1을 더해주는것
++i는 전에 1을 더해주고 실행하는것.
%는 나누고 나머지.
/
+
-
*
등이 있다. (연산)

a=b 는 b대신 a로 표현 (?)... 그 비슷한 뜻.
같다를 표현하고 싶다면 == 을 쓸것.



2.3.2. 자기 반성 및 고칠 점(feeling/finds)

배운 내용이 잘 기억이 안난다 ㅜㅜ
  • 그러니까 복습해야지 ㅋㅋㅋ - 윤종하

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
=>정답 : 1111 1111

2.4. 학생: 김준호

2.4.1. 배운 내용(fact)

봉봉교수님한테 배울때 뭔소리인지 이해불능이었던
i++ 와 ++i를 알았어요 ㅋㅋㅋㅋ 후련후련
i++은 일딴 보여주는건 i값이지만 , 사실은 그 값에 1이 저장된형태.
%는 수학에서 mod기호와 같은 의미.
나머지 사칙연산은 + - * / 역시 수학과 같은의미 !
그리고 = 의 주의사항
x=y일경우 x에다 y를 넣는거고, 같다는건 x==y
또한 x=x+3 보다는 x+=3요렇게 ? 인가? 이렇게가 더 많이 쓰이고 편하다는(?)것.
저는 불편한데 . .ㅠㅠ.ㅠ.ㅠ.

2.4.2. 자기 반성 및 고칠 점(feeling/finds)

음......
내일 수업시간이 두근두근되요 .
이거 끝나고 다시 c 공부해야겠어요 ,
과제.....흑

2.4.3. 과제 정답

소스의결과값 : 식을 정리하면 2+2*7%5 인데
14 = 4 ( mod 5 )
따라서 주어진 식의값은 6

bitwse operation 수행값 :
1111 1111 ( XOR )
1010 1000 ( AND )
1010 1111 ( OR )

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2011-04-20 00:07:40
Processing time 0.7864 sec