U E D R , A S I H C RSS

새싹교실/2012/우리반


1. 새싹 및 강사 명단

  • 이미경, 장윤화,권도현,김태진

2. feedback

  • 새싹교실이 ZeroPage에서 시행되는만큼 4F(ThreeFs + Future Action Plan)에 맞게 feedback을 작성합니다.
    • Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.
    • 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
      • 설마 이것보다 더 짧게 쓰진 않겠죠? 믿을게요
  • feedback은 최대한 성의있게 써주세요.
    • 반드시 ZeroWiki에 작성해주세요. 하위 페이지를 만드는 것도 허용합니다.
    • 여러분들이 배운 내용을 정리해주세요. 학습효과가 더 커집니다.

  • 참고로 ZeroWikiMoniWiki Engine을 사용하며 Google Chrome이나 Mozila Firefox, Safari보다는 Internet Explorer에서 가장 잘 돌아가는 것 같습니다.

3. 수업

3.1. 1회차(3/16)

3.1.1. 출석

선생님 김태진 O
학생 권도현 X
장윤화 O
이미경 O

3.1.2. 수업 내용

  • 위키사용하는 방법
  • Compile이란?
  • 기계어?
  • C프로그래밍 Java C++
-> 10010011 (기계어)
-> 1110010 (AND) (어셈블리)

C (high level 언어)
"hello"
#include ----- => source=code 소스
coding

3.1.3. 후기

  • Coding, 소고기?
  • 김준석 동안
  • 오늘 처음 새싹교실을 했는데, 작년에 배우는 것과는 느낌이 많이 다른다. 듣고있는거보다 가르치는게 생각보다 어렵다. -김태진
  • 늦게와서 정신없었당 ㅠㅠ 새싹교실 하면 C수업 듣는데 도움이 되겠지?ㅋㅋ 기대된다 -미경
  • 처음으로 새싹교실 왔는데 조금밖에 안배웠는데 어렵다.ㅜㅜ 선생님을 따라서 잘 배우겠습니다! -윤화

3.2. 2회차(3/20)

3.2.1. 출석

선생님 김태진 O
학생 권도현 O
장윤화 O
이미경 O

3.2.2. Ice Breaking

  • 주말에 평택에 있는 집에 갔다왔어요 호호 -윤화
  • 토요일 저녁때 학교에 왔다. 육피에 아무도 없었다. 파닭을 시켰는데 젓가락이 없었다.-미경
  • 주말에 강아지와 산책을 했다. 힘들었다. 따라다녔다. 강아지가 힘이너무 세다. ㅋㅋㅋㅋ.. 도현

3.2.3. 수업내용

  • 첫 실습.

int main()
{
}
  • 모든 C 프로그램의 기본은 여기서 시작된다.
  • 프로그래밍 문장이 어떻게 되는지, 한 문장을 나누는 기준 (;) 에 대해서.
  • printf를 사용하는 방법, %d란 무엇인가.
  • #include는 뭘 하는 것인가. 좀 더 상세히 말해줄 필요가 있겠다.
  • = 이란 무엇이고 == 이란 무엇인가.
  • 자료형이란 무엇인가.
  • 선언?? 뭘 선언하는데??

3.2.4. 과제

  • 과제를 내주지 않으려 했으나 내야할거 같당. ㅋㅋㅋ
    1.int a=10,b=12,temp;가 있는데 a에 있는 값을 b에 넣고, b에 있는 값을 a에 넣는 프로그램을 짜 보세요.

//힌트!!
#include <stdio.h>
int main(){
  int a=10,b=12,temp;

  //코드를 넣어주세요
  
  printf("%d %d",a,b);
  //이때 출력값은 12와 10이 되어야겠지요?

  return 0;//이게 뭔지는 신경쓰지 마세요.
}
2.자료형이란 무엇인가, int, float,char,double이 뭔지 생각해보도록 합시다.(모르면 물어봐요~ :) )
3.다음 프로그램이 무엇을 출력하는지 생각해보고, 프로그램을 그대로 짜서 뭐가 나오는지 확인해봅시다.

#include <stdio.h>
int main(){
  int a=21,b=2,c;
  a=a*b;
  c=a+b;
  printf("안녕하세요, 우리반입니다. 1+3=%d",c+b);

  return 0;
}
4.Compile이란 뭘까? 자신이 생각하는 의미를 한줄로 요약해서 후기에 써보자.

3.2.5. 후기

  • 오늘은 보람찬 실습수업 ㅋㅋㅋㅋ 많은걸 배웠습니당 다음시간이 기대되네요. -미경
    (추가 : 인간이 쓰는 언어에 가까운 언어로 짠 프로그램을 기계어로 된 프로그램으로 변환시키는 것이라고 생각합니다.)
  • 프로그래밍의 기초를 배운 것같다.. 감을 익혔다.. 외울 것이 많은 것 같다..
    (추가 : 인간이 쓰는언어를 기계어로 번역하는 것이라고 생각합니다.) -윤화
  • 역시 실제로 해보는게 가장 좋은 수업인듯.. 오늘 잘 배웠습니다 ~!!
(추가 compile이란 High level language , 즉 인간이 구분하기 쉬운 언어로 작성된 프로그램을 Machine language(기계어)로 번역하여 처리하는 작업이라고 생각합니다.-도현
  • 갑작스런 총화.... 때문에 1시간정도밖에 진행하지 못했네요. 이러면 안되는데 ㅠㅠㅠ 그래도 저번주에 잠깐 알려준게 있으니 그거로 이번주치를 퉁친거로 해야할거 같습니다. ㅠㅠ 다음주부턴 수요일로 쭈~욱 가는거니까 필참! ㅋㅋ + 다들 후기 이정도로는 써 줘요 ㅋㅋ -김태진

3.3. 3회차(3/28)

3.3.1. 출석

선생님 김태진 O
학생 권도현 O
장윤화 O
이미경 지각 --^

3.3.2. Ice Breaking

  • 과제 검사 는 사실 퀴즈였습니당 ㅋㅋ

3.3.3. 수업 내용

  • %d, %c, 자료형, 절차지향, if-else,scanf,printf, else if

#include <stdio.h>

int main(){
  char a='d';
  int b;
  char e=a;
  printf("%c",e);

  return 0;
}
무엇이 출력될까요?
  • 직접 코딩해보기
    • 180기준으로 크면 위너, 작으면 정상인. 그런데 164는 정진경, 171은 이미경, 187은 권도현이 나오는 프로그램 작성.

#include <stdio.h>

int main(){
  int height;
  scanf("%d",&height);
  if(164==height) printf("정진경");
  else if(171==height) printf("이미경");
  else if(187==height) printf("권도현");
 ....
  return 0;
}

윤화의 코드
#include <stdio.h>


int main()
{
	int a=164, height;

	scanf("%d",&height);
	
	if(164==height) {
		printf(" 정진경");
	}
	if (171==height){
		printf("이미경");
	}else if(187==height){
		printf("권도현");
	}else if(height<180){
		printf("정상인");
	}else{
		printf("위너");
	}
	return 0;
	
}

3.3.4. 과제

이번 과제는 1번 2번 둘중에 하나를 선택해서 하면 됩니다

1.이번시간 배운 내용(자료형, %d, %c, 절차지향, if-else, scanf, printf, else if, ==, =, +=,>)을 글로 써서 정리해봅시다. 괄호안에 있는 단어들을 이용해서 써봐요. 각각의 단어들의 뜻을 나열해도 좋고, 수업시간에 한 것을 생각해가며 이러이러한 것은 주의해야한다 라는 형태로 줄글로 써도 좋아요. 단순히 정의만 쓰더라도 A4 반페이지는 될거같네요~.
  • 컴퓨터로 해도 되고, 글로써도 상관없어요. 컴퓨터로 하는 경우 jereneal20@네이버.com으로 메일 보내줘요.
2-1.switch, case문을 이용해서 이번시간에 짰던 프로그램을 새로 짜 보도록 합니다.(키에 관한 프로그램)
2-2.char형을 통해 printf("%c%c%c%c%c",????);로 Woori가 나오는 프로그램을 짜보도록 합시다. 소스는 jereneal20@네이버.com으로 보내줘요.

  • 역시 모르는게 있으면 물어보면 제가 가르쳐 줄테니 모르면 꼭 물어봐요. 애매한건 간단하게 적어놓고 체크해놓아도 좋아요.^^
  • 과제는 가능하면 수업시간 전날까지는 올려놓도록 합시다~

3.3.5. 후기

  • 오늘 6p에서 세번째 수업을 했다. if와 else if, temp, scanf, printf 에 대해서 많이 배웠다. scanf는 개념이 어려워서 많이 헷갈렸지만 &만 확실히 외우기로 결정했다. if를 배우면서 혼자 코딩을 해봤다. 괄호 맞추기가 너무 어렵다. 처음이라 보기좋게 못쓰겠다... 다음부턴 보기좋게 줄맞춰서 쓰기로 마음먹었다ㅎㅎㅎㅎㅎ -윤화
  • 오늘은 태진이형이 내주신 과제를 같이 해보면서 printf와 scanf 자료형 temp if else if를 섞어가며 각각의 함수를 알아보았다. 헷갈리는건 아직 마찬가지지만, 훈련하면 나아질거라고 생각한다. c언어는 정말 규칙이 많은것 같다. 집에서 코딩연습이 필요하다고 생각했고, 여러 규칙지키면서 해야하겠다 ㅋㅋ -도현
    • 학교에 있을때 물어보면 내가 도와줄거야. ㅋㅋ -김태진
  • 오늘은 수업에 늦게 와서 혼자 수업 받았다. 그래도 생각보다 빨리 끝나서 신났다 ㅋㅋ 반복문에 대해서 배웠는데 역시 아직 어려운 것 같다..ㅋㅋ 그리고 자꾸 쓰다가 오타가 나서 오류가 떴는데 찾기 힘들었다. 온점과 쉼표를 내 눈은 구별하지 못하는 것 같다..... 앞으로 쓸 때 정성을 담아서 써야겠다 ㅋㅋ -미경

3.4. 4회차(4/4)

3.4.1. 출석

선생님 김태진 O
학생 권도현 O
장윤화 O
이미경 O

3.4.2. 과제 체크

  • 다들 잘 해왔어요 ㅋㅋ

3.4.3. Ice Breaking을 가장한 퀴즈

  • 아오 가장심한 흑석병 ㅠㅠ 어쩌냐 여러분들도 흑석병 조심하세요. 난 엠티는 안갔다. 흑석병 ㅠㅠ 등산(집뒤에 광교산?)은 열심히~ + 농구도 했당 ㅋㅋ -권도현
  • 집부엠티를 갔다. 술마시고 꽐라~_~ 한강 동작대교를 가봤는데, 춥고 냄시나는 곳이었다. 한게없는데... NXT해야되는데 ㅠㅠ -미경

3.4.4. 수업 내용


  • 복습 : %d
  • 개행문자
    • 행 ------ row
    • \n
  • Linux - Ubuntu
    • cd change directory
    • ls
    • gcc

#include <stdio.h>
int main(){
int a=2;
a+=3; // a=a+3;
return 0;
}
  • (2!=3) => 참
  • ASCII Code 아스키코드 => char 에서 쓰이는 코드

#include <stdio.h>
int main(){
	char a='a',c='d';
	c=a+1;

	printf("%c",c);

	return 0;
}
이 프로그램의 출력값은?
switch(height){
	case 171:
		printf("미경이");
	case 187:
		printf("도현이");
	default:
		printf("너 키 뭐니");
}
스위치를 이용한 키 확인

  • a++;, ++a;

for(i=0;i<=100;i++){
	for(j=0;j<100;j++) 
	printf("%d\n",i);
}
  • for문의 요소 검사 순서 -> 1243 243 243

  • Linux, switch, gcc, while, for.

3.4.5. 과제

  • 과제는 가능하면 4월 8일 일요일 밤까지 하도록 합니다.
    • 소스를 jereneal20@네이버.com 으로 보내도록 해요~
  • 공통과제 1: 구구단을 출력하는 프로그램 짜오기.

1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
.
.
.
  • 공통과제 2: C 수업시간에 나온 과제 소스 보내기.
  • 미경이 과제 : 숫자를 입력받고 해당한 만큼 별찍기를 하는 프로그램 짜오기.
    • (5를 넣으면 5-4-3-2-1개의 별을 저 형태로 출력, 4를 넣으면 4-3-2-1 방식.)
    • 현란하게 별을 가지고 놀 수 있는 과제! ㅋㅋ

*****
 ****
  ***
   **
    *
  • 윤화, 도현이 과제 : 해당 출력물을 while혹은 for문을 이중으로 이용해서 짜오기.

1112111
1112111
1112111
3333333
1112111
1112111
1112111
  • 과제가 어려울 수 있으니 모르면 물어보도록해요.

3.4.6. 후기

  • 윤화 - switch와 while을 배웠습니다. while을 배우다가 멘붕할 뻔 했지만 나름 머리를 굴려가며 코딩했어요ㅠ_ㅠ 마지막엔 막혀서 과제를 받았지만... 아직도 코드 짜는 것은 너무 어려워요... 집에가서 열심히 c공부를 해야겠습니다. switch와 case는 같이... 쓰는 건데... 어떨 때 쓰는 거냐면 if문을 쓸 때 번거로우니까 switch를 씁니다.
  • 미경 - switch, while, for을 배웠습니다. 반복문은 아직 어려운것 같아요 ㅠㅠ... 열심히 연습해서 저도 현란하게 *을 가지고 놀고 싶어요.....ㅋㅋ 그리고 자꾸 괄호 쓸 때 실수해서 에러뜨는데 주의해야할 것 같아요..
  • 도현 - switch, while, for을 배웠습니다. 어려워서 정신을 못차리겠어요 ㅠㅠ 열심히 연습해볼게요 ㅠㅠ ;랑 괄호 주의해야겠습니다. 많은 함수가 아직도 낯설어요.. 코딩 정말 어렵네요..

3.5. 4-2회차(보충) (4/9)

  • c는 복습을 안하면 다 까먹어요.. 열심히 복습하겠습니다..! 윤화
  • for문과 while 별찍기를 연습했습니다. 집에서두 연습 많이하면 더 나은 모습 보여드릴 수 있을 거 같네요. 조금씩 나아지는게 보람찹니다 ^^(권도현)

3.6. 5회차(4/11,12)

3.6.1. 출석

선생님 김태진 O
학생 권도현 O
장윤화 O
이미경 O

3.6.2. 과제 체크

  • 다들 해왔군!

3.6.3. 수업 내용

  • 함수에 관하여. scope ( 지역변수, 전역변수), 매개변수.
    • 심화로 재귀함수에 대하여.

#include <stdio.h>

int function(int fa,int fb);
int funct(int fa,int fb);

int main()
{
	int a,j,b;
	
	a=10;
	b=12;
	for(j=0;j<5;j++){
		a+=function(a,b);
	}
}
int funct(int fa,int fb)
{
	
	
	return fa+1;
}

int function(int fa,int fb)
{
	
	fa=funct(fa,fb);
	
	printf("%d %d\n",fa,fb);
	
	
	return 0;
}

3.6.4. 과제

  • do-while, 함수, return, scope, {}
  • WinAPI 에서 for에 관한것 읽어보자.

3.6.5. 후기

  • 점심약속 빨리 끝내고 와서 오늘은 함수를 배웠다. int main()이런 함수를 연달아 써서 함수간의 연결이나 끊김같이 조금은 복잡한 것을 배웠다. 아직 구성이 눈에 않익어 힘들지만 이해가는 부분도 꽤 있었다. 원래 하는날이 아닌데 해주신다고 하신 태진이형 감사합니다 ^^ -도현
    • 는 사실 오늘이 하는 날이라는거 ㅇㅅㅇ ㅋㅋ - 김태진
    • 미경 - 함수에 대해서 배웠다. 재귀함수도 배웠는데 너무 어려운거 같다 ㅠㅠ 자꾸 부르고 또 부르고 해서 결과를 예측할 수 없었다 ㅠㅠㅠ do while이랑 << 도 배웠는데 <<할 때 2진수까지 생각해야해서 화났다.
    • 아직도 c프로그래밍은 어려운 것 같아요...-윤화

3.7. 6회차(4/18)

3.7.1. 출석

선생님 김태진 O
학생 권도현 O
장윤화 O
이미경 O

3.7.2. IceBreaking

3.7.3. 수업 내용

  • 2010년 봉봉교수님의 시험지를 풀어보고, 풀이.
  • 허준범교수님의 ppt에 필요한것만 요약 후 정리.
    • int main( void ) - main indicate that main is a program building block called a function
    • printf,\n,\t,\a,\\,\",return 0; in main,compile, link, scanf, int ==> variables, c=a+b;, %d, + => operator, %,if, ==, !=, >=, else, sequential execution, for, ab:c, total variable, counter variable, garbage value, (int), 연산우선순위, ++a a++ pre/post in/decrement operator, math.h // pow,%21.2d, case switch, break, continue, logical operator || && ! 등.

3.7.4. 과제

  • 과제가 얼마나 생길지는 오늘 수업에 따라서.

3.7.5. 후기


3.8. 7회차(5/2)

3.8.1. 출석

선생님 김태진
학생 권도현
장윤화
이미경

3.8.2. IceBreaking

  • 시험은 어땠나요?!

3.8.3. 수업 내용


3.8.4. 과제


3.8.5. 후기

오늘은 scope를 배웠다. 함수안의함수 구조가 단순했지만 코드를 처음써보니 어렵게 느껴졌다. 서치, 함수안의함수 스코프 수업시간내에서 배웠지만 기억이 나질 않았다. ㅠ 앞의수업 코딩연습을 하면 뒤수업이 나가고 이게 반복되서 자꾸 못하는거같다. 먼저것, 뒤에것 같이 코딩연습을 해봐야 겠다. -도현-
  • 함수와 배열을 배웠다. 배열 쓸 때 0부터 시작하는 걸 잘 기억해야겠다. 중간고사 끝나고 처음 수업 했더니 예전에 배웠던 게 헷갈려서 당황스러웠다. -

3.9. 8회차(5/9)

3.10. 9회차(5/24)

3.10.1. 출석

선생님 김태진 O
새싹 이미경 O

3.10.2. 수업 내용

  • Search, Sort, Array.
  • Hanoi탑 하려다 실패. --;

3.11. 9회차(5/31)

3.11.1. 출석

선생님 김태진 O
새싹 이미경 O

3.11.2. 수업 내용

  • Pointer, 동적할당, 2차원 배열
  • 구조체??, 2중포인터??

3.11.3. 과제

  • 2x2행렬 곱셈 짜보기
  • int* a; int b;일때, &a,a,*a,b,&b가 무엇인지 써보기
  • 아래 코드가 무슨 의미인지 생각해보기

void swap(int* a,int* b)
{
	int temp;
	temp=*a;
	*a=*b;
	*b=temp;
}
int main(){
	int c,d;
	c=4;
	d=5;
	
	swap(&c,&d);
	printf("%d %d",c,d);
	
	
	return 0;
}

3.11.4. 후기

3.12. 10회차(6/13)

  • 동적할당
  • 구조체
  • swap
  • 포인터

3.12.1. 후기

  • 저번 시간이랑 이번 시간 두 번에 걸쳐서 포인터에 관한 내용을 배웠는데 코드를 보면 그 당시에는 이해하는데, 다시 직접 해보려니 헷갈린다ㅜㅜ 혼자서 많이 연습해봐야 할 것 같다. 또 동적 할당에 대해서도 배웠는데, 배열과 비슷해서 이해하기 좋았다. 마지막 수업이라 뭔가 아쉽지만.. 한 학기동안 잘 가르쳐주셔서 C 수업 따라갈 수 있었던 것 같다 -


Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2012-06-13 14:26:32
Processing time 0.4989 sec