[[TableOfContents]]

= 참여자 명단 =

|| 의사 || 장용운 || 11학번 || 미시행 ||
||<|3> 환자 || 천준현 ||<|3> 15학번 || 미시행 ||
|| 최지혁 || 미시행 ||
|| 박인서 || 미시행 ||

= 수업 =
== ì§„í–‰ ==
1. 장소 : 6층 학회실
2. 시간 : 15시 ~ 17시

== ë‚´ìš© ==
'''6강. 맛있는 함수 만들기'''
 * 함수의 정체
 ○ 함수 호출 스택
 ○ 재귀 함수
 * 함수의 형태
 ○ 파라미터
 ○ return 키워드와 리턴값
 ○ 함수의 기능적 구분
 * 함수 정의하기
 * 변수의 스코프
 ○ 전역 변수
 * pre-declaration
 * main 함수에 파라미터 전달하기
 * 디폴트 파라미터

☆추가
 * 2차원 배열 기초

'''실습'''
 * 온도 변환 함수 만들기
 ○ 손코딩
 * 재귀 함수로 Factorial 연산하기
 * Quick sort

= 코드 =
== 예제1 ==

= 숙제 =
1. 이 페이지에 후기 작성하기!
2. 오늘 공부한 개념 수업 페이지에 정리하기!
3. '''테스트 예고''' 둘 중 하나 출제됨. 미리 알아보면 좋겠죠?
 â—‹ Breadth-First Search
 â—‹ Depth-First Search
4. 용어 조사하기
 â—‹ Stack
 â—‹ Queue
 â—‹ Tree
 â—‹ Set
 â—‹ Map
 â—‹ Linked List

= 후기 =
 * '''후기 작성 요령''' : 후기는 F4(ThreeFs + Future Action Plan)에 맞게 작성해주세요.
   * Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.

 *
 *
 * 함수와 관련된 내용을 배우고 실습했습니다. 함수를 열심히 해야겠다는 것을 느꼈습니다. 테스트가 곧 다가오니 열심히 공부해야 겠다고 생각하였습니다.-[박인서]
----


= 숙제 제출 = 
== 천준현 ==

== 최지혁 ==

이론






숙제
 별찍기 1번
#include<stdio.h>
int main()
{
	int i;
	for (i = 0; i < 9; i++)
	{
		if ( i % 2 == 0)
		{
			int j = 4;
			for (int t = i/2 ;(j - t) < ( 15 - t); j ++)
			{
				if ( (j-t)/5 == 0 || (j-t)/5 == 2 )
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
		else
		{
			printf("\n");
		}
	}
	return 0;
}

  별찍기 2번
== 박인서 ==
 * 내용 정리
{{{
<함수 사용법>
int->리턴 타입,반환형 main->함수이름(main함수 부터 실행)(인자(parameter,argumet)-받을인자를 ,로 구분)
{
	return 0;->함수의 종료
}->함수 블록
<함수의 종류>
리턴X(void)
인자X(인자가 없어도 소괄호를 닫아야됨)
둘다X
모두O
<함수의 정의>
함수를 정의하려면 main함수 위에 하거나 main함수 아래에 할땐 따로 정의해야됨(prototype 정의)
}}}
 * 별찍기 & 알파벳찍기
{{{
<1번>
#include <stdio.h>

int main()
{
	int i,j;
	for(i=1;i<=5;i++)
	{
		for(j=0;j<i;j++) printf("*");
		for(j=0;j<5;j++) printf(" ");
		for(j=0;j<6-i;j++) printf("*");
		printf("\n");
	}
	return 0;
}
<2번>
#include <stdio.h>

int main()
{
	int i,j,k;
	for(i=1;i<=7;i++)
	{
		if(i%2==0)
		{
			for(j=0;j<8;j++)
			{
				printf(" ");
				printf("*");
			}
		}
		else
		{
			for(j=0;j<4;j++)
			{
				printf("*");
				for(k=0;k<3;k++) printf(" ");
			}
			printf("*");
		}
		printf("\n");
	}
	return 0;
}
<3번>
#include <stdio.h>

int main()
{
	int a=1,b=0,i,j;
	for(i=1;i<=9;i++)
	{
		if(a==5)
		{
			for(j=0;j<9;j++) printf("*");
			printf("\n");
			b=1;
		}
		else
		{
			for(j=0;j<a;j++) printf("*");
			for(j=0;j<9-(2*a);j++) printf(" ");
			for(j=0;j<a;j++) printf("*");
			printf("\n");
		}
		if(b==1) a--;
		else a++;
	}
	return 0;
}
<알파벳>
#include <stdio.h>

int main()
{
	char a,b;
	int aa,bb,i,j;
	scanf("%c%c",&a,&b);
	aa=(int)a;
	bb=(int)b;
	for(i=aa;i<=bb;i++)
	{
		for(j=aa;j<=i;j++)
		{
			printf("%c",(char)j);
		}
		printf("\n");
	}
	return 0;
}
}}}
 * 용어 정리
 ○ Stack : 나중에 들어간 데이터가 처음에 나오게되는(Last In First out) 선형 자료 구조
 ○ Queue : 처음에 들어간 데이터가 처음에 나오게되는(First In First out) 선형 자료 구조
 ○ Tree : 나무처럼 어떤 하나의 집합으로부터 하위 레벨로 가지가 나오는 집합 관계를 갖는 계층 구조로 사이클이 만들어지지 않음.
 ○ Set : 어떤 조건에 따라 결정되는 요소의 모임
 ○ Map : 집합 요소 사이의 대응을 붙인 것 혹은 대응표인 것을 말함.
 ○ Linked List : 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료 구조이다.

----
-----------------------------------
[새싹교실/2015]
[새싹교실/2015/의사양반]