목차/차례
1. 2차시 2강에 제시된 [문법 2-8]을 사용하여 다음 각각에 대한 파스 트리를 작성하세요.
2. 다음 각각에 대한 EBNF를 작성하세요.
3. C와 C++은 선언과 정의를 구별한다. 차이점은 무엇인가각각의 예를 제시하시오.
4. 다음과 같은 가상언어로 된 프로그램에 대해 정적 영역 규칙을 적용할 때와 동적 영역 규칙을 적용할 때의 출력 결과는 무엇인가요
5. 정수 타입의 영역 두 개를 동적으로 할당해서 각각 20과 30을 저장합니다.그리고 이 두개의 값을 교환하는 C 프로그램을 작성하시오.
6. 이름 상수를 사용할 때 얻어지는 장점에 대해서 설명하시오.
7. 사용하고 있는 C컴파일러에서 short, int, long, float, double 타입의 크기가 어떻게 되는지 확인하시오.
8. 열거타입을 사용할 때 장점을 얻을 수 있는 프로그램을 작성하시오.
9. 형식 매개변수가 포인터 타입보다 참조타입인 경우에 얻어지는 장점에 대해 예를 통해 설명하시오.
본문/내용
1. 2차시 2강에 제시된 [문법 2-8]을 사용하여 다음 각각에 대한 파스 트리를 작성하세요.
``` +/ \ a / \ b c``` 이처럼 가장 상위 노드가 `+`, 하위 노드로 `a`와 ``이 위치하고, `` 아래에 다시 `b`와 `c`가 나란히 배치되는 형태이다. 이러한 방식으로 각 입력 문장이나 수식에 대해 이와 유사한 방법으로 파스 트리를 작성할 수 있다. 파스 트리 작성 과정에서 중요한 점은 각 구성 요소 간의 관계를 정확하게 반영하고, 문법 규칙을 충실히 따르는 것이다. 예를 들어, 복잡한 구조를 다룰 때는 문법의 엘리먼트를 최대한 활용하여 세분화된 트리를 작성해야 한다. 연산자 간의 관계, 피연산자의 위치와 역할에 따라서 트리의 형태가 결정되기 때문이다. 이런 방식으로 각 예제에 적합한 파스 트리를 작성하면, 문법에 대한 이해도가 높아질 것이고, 프로그램의 구문 분석 과정에서 어떤 구조가 형성되는지 명확히 알 수 있다. 문법 규칙을 준수하여 튼튼한 파스 트리를 만드는 것이 프로그래밍 언어 구조를 이해하는 데 큰 도움이 된다. 각각의 입력에 대해 적절한 파스 트리를 그리는 연습을 통해, 프로그래밍 언어의 문법과 구조를 깊이 이해할 수 있게 된다. 이를…