Difference between r1.9 and the current
@@ -115,9 +115,8 @@
* printstar(1)이 누락된 것 같습니다.
= 다음 수업에 배울 내용 =
* 배열
* while, do while 반복문과 재귀함수를 이용한 점찍기를 배웠습니다. -[권우성]
* 전역변수, 지역변수, do while, while, printstar 등을 배웠습니다. 수업시간보다 더 알차게 배운 것 같습니다. -[김민규]
= 다음 수업에 배울 내용 =
* 중첩 반복문 ( optional )
* 주소 및 참조
* 중첩 반복문 + 중첩된 반복문을 통한 별찍기 실습 (Optional)
* 강의자료 및 과제를 통한 리뷰
= 후기 =* while, do while 반복문과 재귀함수를 이용한 점찍기를 배웠습니다. -[권우성]
* 전역변수, 지역변수, do while, while, printstar 등을 배웠습니다. 수업시간보다 더 알차게 배운 것 같습니다. -[김민규]
2.1. 변수의 스코프 ¶
#include <stdio.h> int x=15; function(int y){ printf("%d %d\n", x, y); } int main() { int x=5, y=10; printf("%d %d\n", x, y); function(5); return 0; }
- 한번 실행시켜 보세요.
2.2. 재귀 함수 ¶
printstar(int n){ if(n<1){ return; }else{ printf("*"); printstar(n-1); } }
- 별을 n개 출력하는 함수입니다.
2.3. 별찍기 실습 ¶
- 하드 코딩을 시켜봤습니다.
- 위의 printstar(int) 함수가 정의되었다고 가정
int main() { printstar(5); printstar(4); printstar(3); printstar(2); printstar(1); return 0; }
2.4. 반복문 실습 ¶
- while은 수업 시간에 다룬 내용이라 짧게 설명했습니다. 위의 printstar를 응용한 실습을 진행했습니다.
- printstar 및 N이 정의되었다고 가정했습니다.
2.4.1. 유빈 ¶
int main() { int i; i=1 N=11 while(i=<N); printstar(N-i); i++; } return 0; }
- 세미콜론을 빼먹은 부분이 보입니다.
- while의 중괄호도 제대로 쓰여있지 않습니다.
- i=
- printstar(0)을 수행하는 부분이 있습니다.
2.4.2. 민규 ¶
int main { int i; i=10 while(i>N){ printstar(i) i-- } return 0; }
- 역시 세미콜론을 빼먹은 부분이 있습니다.
- main은 함수이므로 정의할 때 괄호가 필요합니다. main -> main()
- 의도한 대로라면, N은 항상 0인 상수이어야 하므로, 변수를 좀 더 생각해볼 필요가 있습니다.