Contents
1. 참여ìž� ¶
| ì„ ìƒ� | ë°•ì •ê·¼ | 1회차 | 2회차 | 3회차 | 4회차 | 5회차 | 6회차 |
| 학� | �하늘 | O | X | 드� | |||
| ��� | O | O | O | O | O | O | |
| 최승민 | O | X | 드� | ||||
| 김창욱 | 없� | X | O | O | O | O | |
2. 후기 ¶
- 후기 작성 ìš”ë ¹ : 후기는 F4(ThreeFs + Future Action Plan)ì—� 맞게 작성해주세요.
- ê´€ë ¨ 페ì�´ì§€ : ThreeFs, ThreeFs(노스모í�¬), FiveFs(노스모í�¬)
- ë§�í�¬ë¥¼ 눌러보기조차 귀찮ì�€ ë‹¹ì‹ ì�„ 위한 간단한 설명
- Facts, Feelings, Findings, Future Action Plan. 즉, 사실, ëŠ�ë‚€ ì �, 깨달ì�€ ì �, 앞으로ì�˜ 계íš�.
- 예를 들어 지난주ì—� ë�ˆê°€ìŠ¤ë¥¼ 먹ì�€ 것ì—� 대해 후기를 쓴다면 : "지난주ì—� 강남ì—� 가서 하나ì—� 5ë§Œì›�하는 ë�ˆê°€ìŠ¤ë¥¼ 먹었다.(사실) 기대를 잔뜩 했는ë�° 별로 ë§›ì�´ 없었다.(ëŠ�낌) 강남ì�€ ë•…ê°’ì�´ 비싸서 ê°’ë§Œ ë³´ê³ ì—„ì² ë§›ìžˆì�„ê±°ë�¼ 기대하면 안ë�œë‹¤ëŠ” 것ì�„ 알았다.(깨달ì�€ì �) 다ì�Œì—�는 미리 ì�¸í„°ë„·ì—�서 í�‰ì�„ ì°¾ì•„ë³´ê³ ë³„ì �ì�´ 높ì�€ ë�ˆê°€ìŠ¤ì§‘ì�„ 찾아서 ê°€ë´�ì•¼ê² ë‹¤.(앞으로ì�˜ 계íš�)"
- Facts, Feelings, Findings, Future Action Plan. 즉, 사실, ëŠ�ë‚€ ì �, 깨달ì�€ ì �, 앞으로ì�˜ 계íš�.
- ê´€ë ¨ 페ì�´ì§€ : ThreeFs, ThreeFs(노스모í�¬), FiveFs(노스모í�¬)
3.1.1. ë‚´ìš© ¶
- Hello World! 프로그램 짜보기
- �스케�프 시퀀스� 사용
- 서ì‹�문ìž�ì�˜ 사용과 ì�´ìœ
- 주�
3.2.1. ë‚´ìš© ¶
- 변수ì—� 대한 설명 : 메모리ì�˜ í• ë‹¹ê³¼ ì�´ë¦„ì�˜ ì„¤ì •.
- 변수와 �수� 차�
- 변수 ì�´ë¦„ ì„¤ì •ì�˜ 규칙.
- 변수와 �수� 차�
- 키보드로부터ì�˜ ìž…ë ¥ë°›ê¸° : scanf함수
- �료형
형 ìž�료형 í�¬ê¸° 표현범위 ì •ìˆ˜í˜• char 1 byte(8 bit) -128 ì�´ìƒ� +127 ì�´í•˜ int 4 byte(32 bit) -2,147,483,646 ì�´ìƒ� +2,147,483,647 ì�´í•˜ short int 2 byte(16 bit) -32,768 ì�´ìƒ� +32,767 ì�´í•˜ long int 4 byte(32 bit) -2,147,483,646 ì�´ìƒ� +2,147,483,647 ì�´í•˜ 실수형 float 4 byte(32 bit) 10^-37 ì�´ìƒ� 10^38 ì�´í•˜ double 8 byte(64 bit) 10^-307 ì�´ìƒ� 10^308 ì�´í•˜
3.2.2. 후기 ¶
- 모ì�´ëŠ” 시간ì�„ 잘못 ì•Œë ¤ì£¼ì–´ì„œ 한사람 ë°–ì—� 오지 못 하였습니다. 한 사람밖ì—� 오지 못 하여서 ì§„ë�„를 ë§Žì�´ 빼지 못 í•˜ê³ ë³µìŠµê³¼ 질문 위주로 공부를 하였습니다. 시간ì�„ 확실하게 ì •í•˜ê³ , 다ì�Œë¶€í„°ëŠ” ì• ë“¤ì�´ 나오지 못 하여ë�„ ì§„ë�„를 위주로 공부를 í•´ì•¼ê² ìŠµë‹ˆë‹¤. - ë°•ì •ê·¼
3.3.1. ë‚´ìš© ¶
- ì—°ì‚°ìž�ì�˜ 종류 : ì‚°ìˆ , 대입, 관계, ì¦�ê°�, 논리, 비트, 삼í•ì¡°ê±´ ì—°ì‚°ìž�
- ì‚°ìˆ ì—°ì‚°ìž� - (+, -, *, /, %)
- 대입연산� - (=, +=, -=, *=, /=, %=)
- 관계연산� - (<, >, <==, >==, ==, !=)
- ��연산� - (a++, a--, ++a, --a)
- 논리연산� - (&&, ||)
- 비트연산� - (&, |, ^, ~, <<, >>)
- 삼í•ì¡°ê±´ì—°ì‚°ìž� - ( ì¡°ê±´ì‹�? ëª…ë ¹ì–´1:ëª…ë ¹ì–´ )
- ì‚°ìˆ ì—°ì‚°ìž� - (+, -, *, /, %)
- 함수 #define함수와 �반함수
- �반함수
�료형 함수명(배개변수){
함수몸체
}
int add(int a, int b){ int add = a + b; return add }
- #define함수
#define ADD(x,y) (x)+(y)
- �반함수
3.3.2. 후기 ¶
- ì—°ì‚°ìž�ì�˜ 종류들과 #define함수ì�˜ 활용법ì—� 대해서 ë°°ì› ìŠµë‹ˆë‹¤. ì•„ì§� C프로그래ë°�ì�´ ì�µìˆ™ì§€ 않아서 간단한 함수ë�„ ì–´ë µê²Œ ëŠ�껴졌다. 여러 예재로 ìš°ì„ C프로그래ë°�ì—� ì�µìˆ™í•´ ì ¸ì•¼ ê² ë‹¤. 수업ì�´ ë��난 후 복습ì�„ ê¼ í•´ì•¼ê² ë‹¤. - 김창욱
- í•™ìƒ�들ì�´ ì�´í•´ë ¥ì�´ 좋ì�€ê±´ì§€ ì œê°€ 못 가르치는 ê±´ì§€ 금방금방 í• ì�´ì•¼ê¸°ê°€ 다 다르네요;; 다ì�Œë¶€í„°ëŠ” 좀 ë�” 열심히 ê³µë¶€í•˜ê³ ì™€ì„œ 가르치ë�„혹 í•´ì•¼ê² ìŠµë‹ˆë‹¤. ë˜� 피드백으로 ê³¼ì œê°™ì�€ 것ì�„ 내는것ë�„ 괜찮ì�„ 것 같네요 준배해 ë´�ì•¼ê² ìŠµë‹ˆë‹¤. - ë°•ì •ê·¼
3.4.1. ë‚´ìš© ¶
- ì œì–´ë¬¸(if문, switch문)
- if문
- Syntax
- Syntax
- if문
if (expression) {
statement1;
statement2;
:
}
else {
statement1;
statement2;
:
}
- else if� 경우�는 if-else와 다� if-else를 합�놓�것!!
- Switch문
- Syntax
- Syntax
switch ( expression ){
case constant-expression :
statements
case constant-expression :
statements
case constant-expression :
statements
………………..
default :
statements
}
- switch� 경우 statement � break� 사용� 까먹지 맙시다.
3.4.2. 후기 ¶
- ì €ë²ˆì—� ì œì–´ë¬¸ í• ë•Œì—�는 창욱ì�´ê°€ 없었지만 오늘ì�€ 창욱ì�´ë§Œ 나왔기 때문ì—� ì œì–´ë¬¸ 수업ì�„ 다시 했습니다.ìƒ�ê°�보다 ì�´í•´ê°€ ë¹ ë¥´ë„¤ìš”. ì˜ˆì œë�¼ë�˜ê°€ ë¬¸ì œë“±ì�„ 좀ë�” ì¤€ë¹„í•´ê°€ì•¼ê² ìŠµë‹ˆë‹¤. ë˜� ì§„ë�„를 ë�” 빨리빨리 빼서 ì¤‘ê°„ê³ ì‚¬ì—� ë§žì¶œ 수 있ë�„ë¡� 맞추어 ë´�ì•¼ê² ìŠµë‹ˆë‹¤. ì�´ì œ ì œì–´ë¬¸ ë��ëƒˆê³ ë“œë””ì–´ 반복분ì�„ í• ì°¨ë ˆìž…ë‹ˆë‹¤. ê°œì�¸ì �으로 별ì°�는 ë¬¸ì œê°€ 가장 재미있었기ì—� 다ì�Œë²ˆì—�는 ê·¸ ë¬¸ì œë¥¼ 풀어보ë�„ë¡� 합시다ㅎㅎ - ë°•ì •ê·¼
- If구문,If-Else구문,Switch구문ì—� 대해서 ë°°ì› ìŠµë‹ˆë‹¤. ì—시 처ì�Œ 배우는거ë�¼ ì˜ˆì œë“¤ì—� 잘 ì �용하지 못했습니다. 하나하나 배워가면서 코딩하는게 너무 ì‹ ê¸°í•˜ê²Œ ëŠ�ê»´ì§€ê³ ìˆ˜ì—…ì‹œê°„ì�´ 너무 ì§§ì•„ 아쉽습니다. 수업시간ì�´ 길거나 ìž�주 수업ì�„ í• ìˆ˜ 있으면 ì¢‹ê² ìŠµë‹ˆë‹¤. If구문으로 해야하는 ì˜ˆì œë“¤ê³¼ Switch구문으로 해야하는 ì˜ˆì œë“¤ì�˜ ì°¨ì�´ì �ì�„ 조금 깨달았습니다. Switch구문으로 코딩해야 ë�” 쉬운 ì˜ˆì œë“¤ê³¼ If구문으로 코딩해야 ë�” 쉬운 ì˜ˆì œë“¤ì�„ êµ¬ë³„í• ìˆ˜ 있는 ëŠ¥ë ¥ì�„ 키워야 ê² ìŠµë‹ˆë‹¤. - 김창욱
3.5.1. ë‚´ìš© ¶
- 반복문(for문, while문, do while문)
- for문
- Syntax
- Syntax
- for문
for(expr1; expr2; expr3){
statement1;
statement2;
:
}
- expr1 �는 변수 초기화. expr2� 조건. expr3� 조건문� 탈출하기 위한 문장.
- expr1 ->
expr2ì¡°ê±´ 확ì�¸ -> ì¡°ê±´ì—� 충족ë� 때 statement실행 -> expr3 ->
expr2ì¡°ê±´ 확ì�¸ -> ì¡°ê±´ì—� 충족ë� 때 statement실행 -> expr3 ->
:
expr2ì¡°ê±´ 확ì�¸ -> ì¡°ê±´ì—� 충족ë�˜ì§€ 않ì�„겨우 for문ì�„ ë¹ ì ¸ë‚˜ì˜´.
expr2ì¡°ê±´ 확ì�¸ -> ì¡°ê±´ì—� 충족ë� 때 statement실행 -> expr3 ->
:
expr2ì¡°ê±´ 확ì�¸ -> ì¡°ê±´ì—� 충족ë�˜ì§€ 않ì�„겨우 for문ì�„ ë¹ ì ¸ë‚˜ì˜´.
위ì�˜ ê³¼ì •ìœ¼ë¡œ for문ì�´ 실행ë�œë‹¤ëŠ” 것ì�„ ìœ ì�˜.
- While 문
- Syntax
- Syntax
while(expression){
statement1;
statement2;
:
}
- while문� expression�는 for문과 다르게 조건만 들어간다.
- expressionì�´ 충족ë� 경우 statement를 실행한다.
- ì›�치않는 무한루프를 피하기 위해 while문 안ì—� 조건문ì�„ 탈출 í• ìˆ˜ 있는 문장ì�„ ë§Œë“ ë‹¤.
- Do-While 문
- Syntax
- Syntax
do{
statement1;
statement2;
}while(expression);
- while문과 비슷하지만 do_while문ì�€ statement를 무조건 한번ì�€ ì¶œë ¥í•œë‹¤.(ê·¸ ë’¤ì—� 조건확ì�¸.)
3.5.2. 후기 ¶
- 반복문ì�„ 공부하면서 별ì°�기를 해보았는ë�° ìƒ�ê°�보다 ë§Žì�´ ì–´ë ¤ìš° 하ë�”ë�¼êµ¬ìš”. 그래서 반복문ì—� 대한 ë¬¸ì œë¥¼ 좀 ë�” 준비해 왔습니다.(별ì°�기가 ì˜¤ëž˜ê±¸ë ¤ 풀어보지는 못 했지만..ã… ) 아무래ë�„ ë¬¸ì œë¥¼ ë�” ë§Žì�´ 풀어보ë�„ë¡� í•´ ë´�야 ê² ìŠµë‹ˆë‹¤. 반복문ì�€ ë§Žì�´ ì�¨ë³´ëŠ”ê²Œ 좋으니까요ㅎㅎ - ë°•ì •ê·¼
- 여러가지 종류ì�˜ 반복문ì—� 대해서 ë°°ì› ìŠµë‹ˆë‹¤. 여러가지 형태ì�˜ 별ì�„ ì°�ì–´ 보았는ë�° 재밌는 것 같습니다. ìƒ�황ì—� ë”°ë�¼ì„œ 편한 반복문ì�„ 사용해야 ê² ìŠµë‹ˆë‹¤. 다양한 별ì�„ ì°�으면서 반복문ì—� 대해 ì�µìˆ™í•´ ì ¸ì•¼ê² ìŠµë‹ˆë‹¤. ì €ë²ˆì£¼ì—� ë°°ìš´ ë‚´ìš©ì�¸ë�°ë�„ ë¶ˆêµ¬í•˜ê³ ë§Žì�´ 까먹어서 복습ì�„ 해야 ê² ìŠµë‹ˆë‹¤.
3.6.1. ë‚´ìš© ¶
- 시험기간ì�„ 대비하여 ë§Žì�€ ë¬¸ì œë“¤ì�„ 풀었습니다. 반복문ì�„ ì�´ìš©í•œ ë‹¬ë ¥ì¶œë ¥ê³¼ 별ì°�기, ê¸°ì¶œë¬¸ì œë“¤ì�„ 풀었습니다.
- 별 ì¶œë ¥í•˜ê¸°
*
**
***
****
*****
****
***
**
*
3.7.1. ë‚´ìš© ¶
- 함수만들기
- 재귀함수� 사용
- Factorial 함수만들기
- Factorial 함수만들기
#include <stdio.h>
int factorial(int n);
int main()
{
int a;
printf("몇 íŒ©í† ë¦¬ì–¼ì�„ êµ¬í• ê¹Œìš”? ");
scanf("%d", &a);
printf("%d",factorial(a));
}
int factorial(int n){
if(n==1){
return 1;
}else
return n*factorial(n-1);
}
- 피보나치 수열 함수만들기
#include<stdio.h>
int fibo(int x);
int main()
{
int x;
printf("몇번째 피보나치수열ì�„ ì›�하ì‹ë‹ˆê¹Œ? ");
scanf("%d",&x);
printf("%d",fibo(x));
return 0;
}
int fibo(int x)
{
if(x==2)
return 1;
else if
(x==1)
return 1;
else
return fibo(x-1)+fibo(x-2);
}
- 하노�탑 함수 만들기
#include<stdio.h>
int hanoi(int n,char,char,char);
int main()
{
int n;
printf("하노ì�´íƒ‘ì—�서 ì˜®ê¸°ë ¤ëŠ” ì›�ë°˜ì�˜ 개수는?");
scanf("%d",&n);
hanoi(n,'a','c','b');
return 0;
}
int hanoi(int n,char from,char to, char temp)
{
if(n==1) {
printf("%d번째 �반� %c�서 %c로 옮기시오\n",n,from,to);
return 0;
}
hanoi(n-1,from,temp,to);
printf("%d번째 �반� %c�서 %c로 옮기시오\n",n,from,to);
hanoi(n-1,temp,to,from);
}
3.7.2. 후기 ¶
- 재귀함수ì�˜ 사용법ì�„ ì�µìˆ™í•˜ê²Œ 하기 위하여 여러가지 ì˜ˆì œë¥¼ 풀어보았습니다. 처ì�Œ ë‘�가지 ì˜ˆì œëŠ” 비슷해서 그런지 금방 ë��냈는ë�° 하노ì�´íƒ‘ì�€ 힘들어 하ë�”ë�¼êµ¬ìš”. ì €ë�„ 작년ì—� ì�´ ë¬¸ì œë¥¼ 풀기위해 온갖 ë…¸ë ¥ì�„ 하다가 그때 ì„ ìƒ�님ì�˜ ë�„움으로 ê°„ì‹ ížˆ 풀었는ë�° ê·¸ 기분ì�´ ì§±ì�´ë�”ë�¼êµ¬ìš”. 하노ì�´íƒ‘까지는 ê¼ í’€ê³ ë‹¤ì�Œì�„ ë°°ì›Œì•¼ê² ìŠµë‹ˆë‹¤. - ë°•ì •ê·¼
3.8.1. ë‚´ìš© ¶
- 배열� 개�
- ë�™ì�¼í•œ ìž�료형ì�˜ 여러개ì�˜ 변수를 ì�¼ê´„ë�˜ê²Œ ì„ ì–¸í•œë‹¤.
- index를 ì�´ìš©í•˜ì—¬ ìž�료들ì—�게 ì ‘ê·¼í•œë‹¤.
- ë�™ì�¼í•œ ìž�료형ì�˜ 여러개ì�˜ 변수를 ì�¼ê´„ë�˜ê²Œ ì„ ì–¸í•œë‹¤.
- 배열� 초기화
- ì„ ì–¸ì‹œì—� 바로 ë°°ì—´ì�„ 초기화 í• ë•Œì—�는 중괄호 {}를 사용한다.
- ë°°ì—´ì�„ ì„ ì–¸í•œ 후ì—� ë°°ì—´ì�˜ ê°� ì›�소ì—� ê°’ì�„ ì €ìž¥í•˜ëŸ¬ë©´ index를 ì�´ìš©í•œë‹¤.
- ex) a1 = 10;
- ì„ ì–¸ì‹œì—� 바로 ë°°ì—´ì�„ 초기화 í• ë•Œì—�는 중괄호 {}를 사용한다.
3.8.2. 후기 ¶
- ë°°ì—´ë§Œì�„ ê³µë¶€í•˜ë ¤ë‹ˆê¹Œ ìž�꾸 í�¬ì�¸í„°ìª½ìœ¼ë¡œ ì—°ê²°ë�˜ë„¤ìš”ã… ã… í�¬ì�¸í„°ëŠ” 나중ì—� ë”°ë¡œí•˜ë ¤ê³ í–ˆëŠ”ë�° ë°°ì—´ì�„ 하면서 ê°™ì�´ ê³µë¶€í•´ì•¼ê² ìŠµë‹ˆë‹¤. - ë°•ì •ê·¼
3.9.1. ë‚´ìš© ¶
- 다차�배열
- ì—°ì†�ì �ì�¸ ì €ìž¥ê³µê°„ì�„ 만드는 ë°°ì—´ì—�서 1ì°¨ì›� ë¿�ë§Œì�´ 아니ë�¼ 2ì°¨ì›� ë˜�는 ê·¸ ì�´ìƒ�ì�˜ ë°°ì—´ë�„ ìƒ�ê°�í• ìˆ˜ 있다.
- 2ì°¨ì›� ë°°ì—´ì�˜ 경우 행과 열로 나누어 ìƒ�ê°�하면 편하지만 사실ì�€ 1ì°¨ì›�ì�˜ ì—°ì†�ë�œ ì €ìž¥ê³µê°„ì—� ì €ìž¥ë�˜ëŠ” ë°°ì—´ì�´ë‹¤.
- ì—°ì†�ì �ì�¸ ì €ìž¥ê³µê°„ì�„ 만드는 ë°°ì—´ì—�서 1ì°¨ì›� ë¿�ë§Œì�´ 아니ë�¼ 2ì°¨ì›� ë˜�는 ê·¸ ì�´ìƒ�ì�˜ ë°°ì—´ë�„ ìƒ�ê°�í• ìˆ˜ 있다.
- 다차ì›� ë°°ì—´ì�„ ì�´ìš©í•˜ì—¬ 성ì �ê³¼ 학번ì�„ ì¶œë ¥í•˜ê¸°
#include <stdio.h>
int main(){
int stu[2][3]={{20114231,20116849,20113837},{47,85,76}};
int i,max=0,h=0;
for(i=0;i<=2;i++){
if(stu[1][i]>max){
max=stu[1][i];
h=i;
}
}
printf("%d",stu[0][h]);
return 0;
}










